Ranger-684: Fixed some minor issues found during unit testing Signed-off-by: Velmurugan Periasamy <[email protected]>
Project: http://git-wip-us.apache.org/repos/asf/incubator-ranger/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ranger/commit/99b97e21 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ranger/tree/99b97e21 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ranger/diff/99b97e21 Branch: refs/heads/master Commit: 99b97e21bf4dd9c136319471daf7b18ad719d508 Parents: a57740e Author: Sailaja Polavarapu <[email protected]> Authored: Wed Oct 28 17:57:46 2015 -0700 Committer: Velmurugan Periasamy <[email protected]> Committed: Fri Oct 30 18:32:07 2015 -0400 ---------------------------------------------------------------------- .../unixusersync/config/UserGroupSyncConfig.java | 18 +++++++++++------- .../org/apache/ranger/usergroupsync/RegEx.java | 2 +- .../apache/ranger/usergroupsync/RegExTest.java | 5 +++-- 3 files changed, 15 insertions(+), 10 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/99b97e21/ugsync/src/main/java/org/apache/ranger/unixusersync/config/UserGroupSyncConfig.java ---------------------------------------------------------------------- diff --git a/ugsync/src/main/java/org/apache/ranger/unixusersync/config/UserGroupSyncConfig.java b/ugsync/src/main/java/org/apache/ranger/unixusersync/config/UserGroupSyncConfig.java index ceeb836..f43e125 100644 --- a/ugsync/src/main/java/org/apache/ranger/unixusersync/config/UserGroupSyncConfig.java +++ b/ugsync/src/main/java/org/apache/ranger/unixusersync/config/UserGroupSyncConfig.java @@ -25,7 +25,6 @@ import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; -import java.util.Enumeration; import java.util.HashSet; import java.util.List; import java.util.Properties; @@ -756,12 +755,17 @@ public class UserGroupSyncConfig { public List<String> getAllRegexPatterns(String baseProperty) { List<String> regexPatterns = new ArrayList<String>(); if (prop != null) { - Enumeration<?> propertyNames = prop.propertyNames(); - while (propertyNames != null && propertyNames.hasMoreElements()) { - String propertyName = (String)propertyNames.nextElement(); - if (propertyName != null && propertyName.contains(baseProperty)) { - regexPatterns.add(prop.getProperty(propertyName)); - } + String baseRegex = prop.getProperty(baseProperty); + if (baseRegex == null) { + return regexPatterns; + } + regexPatterns.add(baseRegex); + int i = 1; + String nextRegex = prop.getProperty(baseProperty + "." + i);; + while (nextRegex != null) { + regexPatterns.add(nextRegex); + i++; + nextRegex = prop.getProperty(baseProperty + "." + i); } } http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/99b97e21/ugsync/src/main/java/org/apache/ranger/usergroupsync/RegEx.java ---------------------------------------------------------------------- diff --git a/ugsync/src/main/java/org/apache/ranger/usergroupsync/RegEx.java b/ugsync/src/main/java/org/apache/ranger/usergroupsync/RegEx.java index b655536..0e9ed99 100644 --- a/ugsync/src/main/java/org/apache/ranger/usergroupsync/RegEx.java +++ b/ugsync/src/main/java/org/apache/ranger/usergroupsync/RegEx.java @@ -54,7 +54,7 @@ public class RegEx extends AbstractMapper { String matchPattern = m.group(1); String replacement = m.group(2); if (matchPattern != null && !matchPattern.isEmpty() && replacement != null) { - replacementPattern.put(matchPattern, Matcher.quoteReplacement(replacement)); + replacementPattern.put(matchPattern, replacement); if (logger.isDebugEnabled()) { logger.debug(baseProperty + " match pattern = " + matchPattern + " and replacement string = " + replacement); } http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/99b97e21/ugsync/src/test/java/org/apache/ranger/usergroupsync/RegExTest.java ---------------------------------------------------------------------- diff --git a/ugsync/src/test/java/org/apache/ranger/usergroupsync/RegExTest.java b/ugsync/src/test/java/org/apache/ranger/usergroupsync/RegExTest.java index d74eb2b..2621862 100644 --- a/ugsync/src/test/java/org/apache/ranger/usergroupsync/RegExTest.java +++ b/ugsync/src/test/java/org/apache/ranger/usergroupsync/RegExTest.java @@ -55,7 +55,7 @@ public class RegExTest { @Test public void testGroupNameTransform() { groupRegexPatterns.add("s/\\s/_/g"); - groupRegexPatterns.add("s/_/$/g"); + groupRegexPatterns.add("s/_/\\$/g"); groupNameRegEx.populateReplacementPatterns(userNameBaseProperty, groupRegexPatterns); assertEquals("ldap$grp", groupNameRegEx.transform("ldap grp")); } @@ -79,8 +79,9 @@ public class RegExTest { userRegexPatterns.add("s/\\\\/ /g"); userRegexPatterns.add("s//_/g"); userNameRegEx.populateReplacementPatterns(userNameBaseProperty, userRegexPatterns); - groupRegexPatterns.add("s/\\s//g"); + groupRegexPatterns.add("s/\\s/\\$/g"); groupRegexPatterns.add("s/\\s"); + groupRegexPatterns.add("s/\\$//g"); groupNameRegEx.populateReplacementPatterns(userNameBaseProperty, groupRegexPatterns); assertEquals("test user", userNameRegEx.transform("test\\user")); assertEquals("ldapgrp", groupNameRegEx.transform("ldap grp"));
