You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oozie.apache.org by an...@apache.org on 2018/05/04 10:44:17 UTC
oozie git commit: OOZIE-2914 Consolidate trim calls (Jan Hentschel
via andras.piros)
Repository: oozie
Updated Branches:
refs/heads/master 6ac783009 -> 553d5d4db
OOZIE-2914 Consolidate trim calls (Jan Hentschel via andras.piros)
Project: http://git-wip-us.apache.org/repos/asf/oozie/repo
Commit: http://git-wip-us.apache.org/repos/asf/oozie/commit/553d5d4d
Tree: http://git-wip-us.apache.org/repos/asf/oozie/tree/553d5d4d
Diff: http://git-wip-us.apache.org/repos/asf/oozie/diff/553d5d4d
Branch: refs/heads/master
Commit: 553d5d4dbe50d73133443b1bf4bc44f841e19dbd
Parents: 6ac7830
Author: Andras Piros <an...@cloudera.com>
Authored: Fri May 4 12:43:11 2018 +0200
Committer: Andras Piros <an...@cloudera.com>
Committed: Fri May 4 12:43:11 2018 +0200
----------------------------------------------------------------------
.../hadoop/CredentialsProviderFactory.java | 18 +-----
.../action/hadoop/DistcpActionExecutor.java | 20 +------
.../apache/oozie/util/ELConstantsFunctions.java | 5 +-
.../java/org/apache/oozie/util/StringUtils.java | 40 +++++++++++++
.../org/apache/oozie/util/TestStringUtils.java | 61 ++++++++++++++++++++
release-log.txt | 1 +
6 files changed, 108 insertions(+), 37 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/oozie/blob/553d5d4d/core/src/main/java/org/apache/oozie/action/hadoop/CredentialsProviderFactory.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/oozie/action/hadoop/CredentialsProviderFactory.java b/core/src/main/java/org/apache/oozie/action/hadoop/CredentialsProviderFactory.java
index a353e15..095cdd2 100644
--- a/core/src/main/java/org/apache/oozie/action/hadoop/CredentialsProviderFactory.java
+++ b/core/src/main/java/org/apache/oozie/action/hadoop/CredentialsProviderFactory.java
@@ -27,6 +27,7 @@ import org.apache.hadoop.io.Text;
import org.apache.hadoop.security.UserGroupInformation;
import org.apache.hadoop.security.token.Token;
import org.apache.oozie.service.ConfigurationService;
+import org.apache.oozie.util.StringUtils;
import org.apache.oozie.util.XLog;
public class CredentialsProviderFactory {
@@ -53,7 +54,7 @@ public class CredentialsProviderFactory {
private CredentialsProviderFactory() throws Exception {
providerCache = new HashMap<>();
for (String function : ConfigurationService.getStrings(CRED_KEY)) {
- function = trim(function);
+ function = StringUtils.trim(function);
LOG.debug("Creating Credential class for : " + function);
String[] str = function.split("=");
if (str.length > 0) {
@@ -112,19 +113,4 @@ public class CredentialsProviderFactory {
UserGroupInformation.getLoginUser().checkTGTAndReloginFromKeytab();
LOG.debug("Relogin from keytab successful");
}
-
- /**
- * To trim string
- *
- * @param str
- * @return trim string
- */
- public String trim(String str) {
- if (str != null) {
- str = str.replaceAll("\\n", "");
- str = str.replaceAll("\\t", "");
- str = str.trim();
- }
- return str;
- }
}
http://git-wip-us.apache.org/repos/asf/oozie/blob/553d5d4d/core/src/main/java/org/apache/oozie/action/hadoop/DistcpActionExecutor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/oozie/action/hadoop/DistcpActionExecutor.java b/core/src/main/java/org/apache/oozie/action/hadoop/DistcpActionExecutor.java
index 89c8440..a64d128 100644
--- a/core/src/main/java/org/apache/oozie/action/hadoop/DistcpActionExecutor.java
+++ b/core/src/main/java/org/apache/oozie/action/hadoop/DistcpActionExecutor.java
@@ -23,6 +23,7 @@ import org.apache.hadoop.fs.Path;
import org.apache.hadoop.mapreduce.MRJobConfig;
import org.apache.oozie.action.ActionExecutorException;
import org.apache.oozie.service.ConfigurationService;
+import org.apache.oozie.util.StringUtils;
import org.apache.oozie.util.XLog;
import org.jdom.Element;
@@ -63,7 +64,7 @@ public class DistcpActionExecutor extends JavaActionExecutor{
@Override
public List<Class<?>> getLauncherClasses() {
- List<Class<?>> classes = new ArrayList<Class<?>>();
+ List<Class<?>> classes = new ArrayList<>();
try {
classes.add(Class.forName(CONF_OOZIE_DISTCP_ACTION_MAIN_CLASS));
}
@@ -82,7 +83,7 @@ public class DistcpActionExecutor extends JavaActionExecutor{
public static String getClassNamebyType(String type){
String classname = null;
for (String function : ConfigurationService.getStrings(CLASS_NAMES)) {
- function = DistcpActionExecutor.Trim(function);
+ function = StringUtils.trim(function);
LOG.debug("class for Distcp Action: " + function);
String[] str = function.split("=");
if (str.length > 0) {
@@ -95,21 +96,6 @@ public class DistcpActionExecutor extends JavaActionExecutor{
}
/**
- * To trim string
- *
- * @param str
- * @return trim string
- */
- public static String Trim(String str) {
- if (str != null) {
- str = str.replaceAll("\\n", "");
- str = str.replaceAll("\\t", "");
- str = str.trim();
- }
- return str;
- }
-
- /**
* Return the sharelib name for the action.
*
* @return returns <code>distcp</code>.
http://git-wip-us.apache.org/repos/asf/oozie/blob/553d5d4d/core/src/main/java/org/apache/oozie/util/ELConstantsFunctions.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/oozie/util/ELConstantsFunctions.java b/core/src/main/java/org/apache/oozie/util/ELConstantsFunctions.java
index 87db66e..7039c48 100644
--- a/core/src/main/java/org/apache/oozie/util/ELConstantsFunctions.java
+++ b/core/src/main/java/org/apache/oozie/util/ELConstantsFunctions.java
@@ -19,13 +19,10 @@
package org.apache.oozie.util;
import org.apache.hadoop.conf.Configuration;
-import org.jdom.Element;
import org.json.simple.JSONValue;
-import java.text.SimpleDateFormat;
import java.util.Map;
import java.util.Properties;
-import java.util.TimeZone;
import java.util.Date;
import java.net.URLEncoder;
import java.io.UnsupportedEncodingException;
@@ -161,7 +158,7 @@ public class ELConstantsFunctions {
* @return the trimmed version of the given string or the empty string if the given string was <code>null</code>
*/
public static String trim(String input) {
- return (input == null) ? "" : input.trim();
+ return org.apache.commons.lang.StringUtils.trimToEmpty(input);
}
/**
http://git-wip-us.apache.org/repos/asf/oozie/blob/553d5d4d/core/src/main/java/org/apache/oozie/util/StringUtils.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/oozie/util/StringUtils.java b/core/src/main/java/org/apache/oozie/util/StringUtils.java
new file mode 100644
index 0000000..280c83a
--- /dev/null
+++ b/core/src/main/java/org/apache/oozie/util/StringUtils.java
@@ -0,0 +1,40 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.oozie.util;
+
+/**
+ * Utility methods for working with {@link String} objects.
+ */
+public class StringUtils {
+ /**
+ * Trims leading and trailing whitespaces of a {@link String} object. Also replaces new lines characters and tab characters by
+ * empty Strings.
+ *
+ * @param str the {@link String} to trim
+ * @return the trimmed {@link String}
+ */
+ public static String trim(String str) {
+ if (str != null) {
+ str = str.replaceAll("\\n", "");
+ str = str.replaceAll("\\t", "");
+ str = str.trim();
+ }
+ return str;
+ }
+}
http://git-wip-us.apache.org/repos/asf/oozie/blob/553d5d4d/core/src/test/java/org/apache/oozie/util/TestStringUtils.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/oozie/util/TestStringUtils.java b/core/src/test/java/org/apache/oozie/util/TestStringUtils.java
new file mode 100644
index 0000000..423d6be
--- /dev/null
+++ b/core/src/test/java/org/apache/oozie/util/TestStringUtils.java
@@ -0,0 +1,61 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.oozie.util;
+
+import org.junit.Test;
+
+import static junit.framework.Assert.assertEquals;
+
+/**
+ * Test cases for the {@link StringUtils} class.
+ */
+public class TestStringUtils {
+ /**
+ * Tests if a new line character is replaced by an empty string.
+ */
+ @Test
+ public void testTrimNewLineReplacement() {
+ assertEquals("A string", StringUtils.trim("A \n string"));
+ }
+
+ /**
+ * Tests if a tab character is replaced by an empty string.
+ */
+ @Test
+ public void testTrimTabReplacement() {
+ assertEquals("A string", StringUtils.trim("A \t string"));
+ }
+
+ /**
+ * Tests if surrounding whitespaces are trimmed.
+ */
+ @Test
+ public void testTrimWhitespaceReplacement() {
+ assertEquals("A string", StringUtils.trim(" A string "));
+ }
+
+ /**
+ * Tests if a valid string, meaning one without leading and trailing whitespaces, no new line characters and no tab character,
+ * is returned umodified.
+ */
+ @Test
+ public void testTrimUnmodifiedString() {
+ assertEquals("A string", StringUtils.trim("A string"));
+ }
+}
http://git-wip-us.apache.org/repos/asf/oozie/blob/553d5d4d/release-log.txt
----------------------------------------------------------------------
diff --git a/release-log.txt b/release-log.txt
index 896c7e5..9f148b8 100644
--- a/release-log.txt
+++ b/release-log.txt
@@ -1,5 +1,6 @@
-- Oozie 5.1.0 release (trunk - unreleased)
+OOZIE-2914 Consolidate trim calls (Jan Hentschel via andras.piros)
OOZIE-2934 [sharelib/spark] Fix Findbugs error (Jan Hentschel via andras.piros)
OOZIE-3225 [Kerberos] Webconsole disabled message shown instead of 401 error (kmarton via andras.piros)
OOZIE-2494 Cron syntax not handling DST properly (kmarton via andras.piros)