From bbd41960d1fc0174d70482faf7bedebf296c3774 Mon Sep 17 00:00:00 2001 From: Tomas Bjerre Date: Thu, 13 Jul 2017 21:58:43 +0200 Subject: [PATCH] Refactoring --- CHANGELOG.md | 11 ++++++++++- .../gwt/{ => resolvers}/FlattenerUtils.java | 2 +- .../plugins/gwt/resolvers/JsonFlattener.java | 4 ++-- .../gwt/resolvers/RequestHeaderResolver.java | 2 +- .../gwt/resolvers/RequestParameterResolver.java | 16 +++++++--------- .../plugins/gwt/resolvers/XmlFlattener.java | 6 +++--- 6 files changed, 24 insertions(+), 17 deletions(-) rename src/main/java/org/jenkinsci/plugins/gwt/{ => resolvers}/FlattenerUtils.java (89%) diff --git a/CHANGELOG.md b/CHANGELOG.md index 42f9bdc..496ab73 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,11 +3,20 @@ Changelog of Generic Webhook Plugin. ## Unreleased ### No issue +**Doc** + + +[bc3eb085bc2543d](https://github.com/jenkinsci/generic-webhook-trigger-plugin/commit/bc3eb085bc2543d) Tomas Bjerre *2017-07-13 19:59:27* + + +## 1.13 (2017-07-13 19:46:13) +### No issue + **Both exact and "_0" if only one value** * If request, or header, expression matches only one value then both an exact variable and a variable with added _0 is now contributed. Users who expect only one value will probably expect the exact variable name. Users who expects several will probably want to always use the variableName_X varaibles. -[2ed09abb65eeef5](https://github.com/jenkinsci/generic-webhook-trigger-plugin/commit/2ed09abb65eeef5) Tomas Bjerre *2017-07-13 19:37:12* +[4cc63cc9fc5be42](https://github.com/jenkinsci/generic-webhook-trigger-plugin/commit/4cc63cc9fc5be42) Tomas Bjerre *2017-07-13 19:45:19* **doc** diff --git a/src/main/java/org/jenkinsci/plugins/gwt/FlattenerUtils.java b/src/main/java/org/jenkinsci/plugins/gwt/resolvers/FlattenerUtils.java similarity index 89% rename from src/main/java/org/jenkinsci/plugins/gwt/FlattenerUtils.java rename to src/main/java/org/jenkinsci/plugins/gwt/resolvers/FlattenerUtils.java index e048a9b..d45014f 100644 --- a/src/main/java/org/jenkinsci/plugins/gwt/FlattenerUtils.java +++ b/src/main/java/org/jenkinsci/plugins/gwt/resolvers/FlattenerUtils.java @@ -1,4 +1,4 @@ -package org.jenkinsci.plugins.gwt; +package org.jenkinsci.plugins.gwt.resolvers; public class FlattenerUtils { diff --git a/src/main/java/org/jenkinsci/plugins/gwt/resolvers/JsonFlattener.java b/src/main/java/org/jenkinsci/plugins/gwt/resolvers/JsonFlattener.java index 1054404..a51f6ba 100644 --- a/src/main/java/org/jenkinsci/plugins/gwt/resolvers/JsonFlattener.java +++ b/src/main/java/org/jenkinsci/plugins/gwt/resolvers/JsonFlattener.java @@ -1,8 +1,8 @@ package org.jenkinsci.plugins.gwt.resolvers; import static com.google.common.collect.Maps.newHashMap; -import static org.jenkinsci.plugins.gwt.FlattenerUtils.filter; -import static org.jenkinsci.plugins.gwt.FlattenerUtils.noWhitespace; +import static org.jenkinsci.plugins.gwt.resolvers.FlattenerUtils.filter; +import static org.jenkinsci.plugins.gwt.resolvers.FlattenerUtils.noWhitespace; import java.util.List; import java.util.Map; diff --git a/src/main/java/org/jenkinsci/plugins/gwt/resolvers/RequestHeaderResolver.java b/src/main/java/org/jenkinsci/plugins/gwt/resolvers/RequestHeaderResolver.java index 317e8f5..e7e8bfe 100644 --- a/src/main/java/org/jenkinsci/plugins/gwt/resolvers/RequestHeaderResolver.java +++ b/src/main/java/org/jenkinsci/plugins/gwt/resolvers/RequestHeaderResolver.java @@ -2,7 +2,7 @@ import static com.google.common.base.Optional.absent; import static com.google.common.base.Optional.of; -import static org.jenkinsci.plugins.gwt.FlattenerUtils.filter; +import static org.jenkinsci.plugins.gwt.resolvers.FlattenerUtils.filter; import java.util.Enumeration; import java.util.HashMap; diff --git a/src/main/java/org/jenkinsci/plugins/gwt/resolvers/RequestParameterResolver.java b/src/main/java/org/jenkinsci/plugins/gwt/resolvers/RequestParameterResolver.java index 278493b..22e88b0 100644 --- a/src/main/java/org/jenkinsci/plugins/gwt/resolvers/RequestParameterResolver.java +++ b/src/main/java/org/jenkinsci/plugins/gwt/resolvers/RequestParameterResolver.java @@ -1,9 +1,8 @@ package org.jenkinsci.plugins.gwt.resolvers; import static com.google.common.base.Optional.absent; -import static com.google.common.base.Optional.fromNullable; import static com.google.common.collect.Maps.newHashMap; -import static org.jenkinsci.plugins.gwt.FlattenerUtils.filter; +import static org.jenkinsci.plugins.gwt.resolvers.FlattenerUtils.filter; import java.util.List; import java.util.Map; @@ -21,15 +20,14 @@ public Map getRequestParameters( Map resolvedVariables = newHashMap(); if (incomingParameterMap != null) { for (String requestParamName : incomingParameterMap.keySet()) { - Optional mappedRequestParameterOpt = - findMappedRequestParameter(configuredGenericRequestVariables, requestParamName); - if (!mappedRequestParameterOpt.isPresent()) { + Optional configuredVariable = + findConfiguredVariable(configuredGenericRequestVariables, requestParamName); + if (!configuredVariable.isPresent()) { continue; } - String regexpFilter = mappedRequestParameterOpt.get(); String[] values = incomingParameterMap.get(requestParamName); for (int i = 0; i < values.length; i++) { - String filteredValue = filter(values[i], regexpFilter); + String filteredValue = filter(values[i], configuredVariable.get().getRegexpFilter()); resolvedVariables.put(requestParamName + "_" + i, filteredValue); boolean firstAndOnlyValue = i == 0 && values.length == 1; if (firstAndOnlyValue) { @@ -42,12 +40,12 @@ public Map getRequestParameters( return resolvedVariables; } - private Optional findMappedRequestParameter( + private Optional findConfiguredVariable( List genericRequestVariables, String requestParamName) { if (genericRequestVariables != null) { for (GenericRequestVariable v : genericRequestVariables) { if (v.getKey().equals(requestParamName)) { - return fromNullable(v.getRegexpFilter()); + return Optional.of(v); } } } diff --git a/src/main/java/org/jenkinsci/plugins/gwt/resolvers/XmlFlattener.java b/src/main/java/org/jenkinsci/plugins/gwt/resolvers/XmlFlattener.java index 4a357ef..bedde91 100644 --- a/src/main/java/org/jenkinsci/plugins/gwt/resolvers/XmlFlattener.java +++ b/src/main/java/org/jenkinsci/plugins/gwt/resolvers/XmlFlattener.java @@ -1,8 +1,8 @@ package org.jenkinsci.plugins.gwt.resolvers; import static com.google.common.collect.Maps.newHashMap; -import static org.jenkinsci.plugins.gwt.FlattenerUtils.filter; -import static org.jenkinsci.plugins.gwt.FlattenerUtils.noWhitespace; +import static org.jenkinsci.plugins.gwt.resolvers.FlattenerUtils.filter; +import static org.jenkinsci.plugins.gwt.resolvers.FlattenerUtils.noWhitespace; import java.util.Map; @@ -27,7 +27,7 @@ public Map flatternXmlNode(GenericVariable gv, NodeList nodeList return resolvedVariables; } - Map flattenXmlNode( + private Map flattenXmlNode( String parentKey, String regexFilter, Node node, int level, boolean fromRootLevel) { Map resolvedVariables = newHashMap(); if (isXmlLeafNode(node)) {