This is an automated email from the ASF dual-hosted git repository.

cgivre pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/drill.git


The following commit(s) were added to refs/heads/master by this push:
     new cf6297bcd8 DRILL-8240: Remove Strings.java and Add Dependency on 
log4j-api Instead (#2574)
cf6297bcd8 is described below

commit cf6297bcd86932bff4b71778362f8e0e1ec9e899
Author: PJ Fanning <[email protected]>
AuthorDate: Sun Jun 19 12:46:33 2022 +0100

    DRILL-8240: Remove Strings.java and Add Dependency on log4j-api Instead 
(#2574)
---
 contrib/storage-hive/core/pom.xml                  |   5 +
 .../org/apache/logging/log4j/util/Strings.java     | 311 ---------------------
 2 files changed, 5 insertions(+), 311 deletions(-)

diff --git a/contrib/storage-hive/core/pom.xml 
b/contrib/storage-hive/core/pom.xml
index d915eda286..fabc3696cf 100644
--- a/contrib/storage-hive/core/pom.xml
+++ b/contrib/storage-hive/core/pom.xml
@@ -118,6 +118,11 @@
       <groupId>${calcite.groupId}</groupId>
       <artifactId>calcite-core</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.apache.logging.log4j</groupId>
+      <artifactId>log4j-api</artifactId>
+      <version>${log4j.version}</version>
+    </dependency>
     <dependency>
       <groupId>org.apache.drill</groupId>
       <artifactId>drill-common</artifactId>
diff --git 
a/contrib/storage-hive/core/src/main/java/org/apache/logging/log4j/util/Strings.java
 
b/contrib/storage-hive/core/src/main/java/org/apache/logging/log4j/util/Strings.java
deleted file mode 100644
index 0d281e50c8..0000000000
--- 
a/contrib/storage-hive/core/src/main/java/org/apache/logging/log4j/util/Strings.java
+++ /dev/null
@@ -1,311 +0,0 @@
-/*
- * 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.logging.log4j.util;
-
-import java.util.Iterator;
-import java.util.Locale;
-import java.util.Objects;
-
-/**
- * Hive uses class with the same full name from log4j-api.
- * Added this class to avoid ClassNotFound errors from Hive.
- * <p>
- * This is a copy of the log4j-api 2.14.1 code with some minor tweaks to avoid 
dependency on other classes.
- *
- * See <a 
href="https://issues.apache.org/jira/browse/HIVE-23088";>HIVE-23088</a> for the 
problem description.
- */
-public final class Strings {
-
-  /**
-   * The empty string.
-   */
-  public static final String EMPTY = "";
-
-  /**
-   * OS-dependent line separator, defaults to {@code "\n"} if the system 
property {@code "line.separator"} cannot be
-   * read. Apache Log4J 2.x code uses a PropertyUtil and may get a different 
result - but we don't want to copy all
-   * that code to Drill.
-   */
-  public static final String LINE_SEPARATOR = System.lineSeparator();
-
-  private static final char DQUOTE = '\"';
-  private static final char QUOTE = '\'';
-
-  /**
-   * Returns a double quoted string.
-   *
-   * @param str a String
-   * @return {@code "str"}
-   */
-  public static String dquote(final String str) {
-    return DQUOTE + str + DQUOTE;
-  }
-
-  /**
-   * Checks if a String is blank. A blank string is one that is either
-   * {@code null}, empty, or all characters are {@link 
Character#isWhitespace(char)}.
-   *
-   * @param s the String to check, may be {@code null}
-   * @return {@code true} if the String is {@code null}, empty, or or all 
characters are {@link Character#isWhitespace(char)}
-   */
-  public static boolean isBlank(final String s) {
-    if (s == null || s.isEmpty()) {
-      return true;
-    }
-    for (int i = 0; i < s.length(); i++) {
-      char c = s.charAt(i);
-      if (!Character.isWhitespace(c)) {
-        return false;
-      }
-    }
-    return true;
-  }
-
-  /**
-   * <p>
-   * Checks if a CharSequence is empty ("") or null.
-   * </p>
-   *
-   * <pre>
-   * Strings.isEmpty(null)      = true
-   * Strings.isEmpty("")        = true
-   * Strings.isEmpty(" ")       = false
-   * Strings.isEmpty("bob")     = false
-   * Strings.isEmpty("  bob  ") = false
-   * </pre>
-   *
-   * <p>
-   * NOTE: This method changed in Lang version 2.0. It no longer trims the 
CharSequence. That functionality is
-   * available in isBlank().
-   * </p>
-   *
-   * <p>
-   * Copied from Apache Commons Lang 
org.apache.commons.lang3.StringUtils.isEmpty(CharSequence)
-   * </p>
-   *
-   * @param cs the CharSequence to check, may be null
-   * @return {@code true} if the CharSequence is empty or null
-   */
-  public static boolean isEmpty(final CharSequence cs) {
-    return cs == null || cs.length() == 0;
-  }
-
-  /**
-   * Checks if a String is not blank. The opposite of {@link #isBlank(String)}.
-   *
-   * @param s the String to check, may be {@code null}
-   * @return {@code true} if the String is non-{@code null} and has content 
after being trimmed.
-   */
-  public static boolean isNotBlank(final String s) {
-    return !isBlank(s);
-  }
-
-  /**
-   * <p>
-   * Checks if a CharSequence is not empty ("") and not null.
-   * </p>
-   *
-   * <pre>
-   * Strings.isNotEmpty(null)      = false
-   * Strings.isNotEmpty("")        = false
-   * Strings.isNotEmpty(" ")       = true
-   * Strings.isNotEmpty("bob")     = true
-   * Strings.isNotEmpty("  bob  ") = true
-   * </pre>
-   *
-   * <p>
-   * Copied from Apache Commons Lang 
org.apache.commons.lang3.StringUtils.isNotEmpty(CharSequence)
-   * </p>
-   *
-   * @param cs the CharSequence to check, may be null
-   * @return {@code true} if the CharSequence is not empty and not null
-   */
-  public static boolean isNotEmpty(final CharSequence cs) {
-    return !isEmpty(cs);
-  }
-
-  /**
-   * <p>Joins the elements of the provided {@code Iterable} into
-   * a single String containing the provided elements.</p>
-   *
-   * <p>No delimiter is added before or after the list. Null objects or empty
-   * strings within the iteration are represented by empty strings.</p>
-   *
-   * @param iterable  the {@code Iterable} providing the values to join 
together, may be null
-   * @param separator  the separator character to use
-   * @return the joined String, {@code null} if null iterator input
-   */
-  public static String join(final Iterable<?> iterable, final char separator) {
-    if (iterable == null) {
-      return null;
-    }
-    return join(iterable.iterator(), separator);
-  }
-
-  /**
-   * <p>Joins the elements of the provided {@code Iterator} into
-   * a single String containing the provided elements.</p>
-   *
-   * <p>No delimiter is added before or after the list. Null objects or empty
-   * strings within the iteration are represented by empty strings.</p>
-   *
-   * @param iterator  the {@code Iterator} of values to join together, may be 
null
-   * @param separator  the separator character to use
-   * @return the joined String, {@code null} if null iterator input
-   */
-  public static String join(final Iterator<?> iterator, final char separator) {
-
-    // handle null, zero and one elements before building a buffer
-    if (iterator == null) {
-      return null;
-    }
-    if (!iterator.hasNext()) {
-      return EMPTY;
-    }
-    final Object first = iterator.next();
-    if (!iterator.hasNext()) {
-      return Objects.toString(first, EMPTY);
-    }
-
-    // two or more elements
-    final StringBuilder buf = new StringBuilder(256); // Java default is 16, 
probably too small
-    if (first != null) {
-      buf.append(first);
-    }
-
-    while (iterator.hasNext()) {
-      buf.append(separator);
-      final Object obj = iterator.next();
-      if (obj != null) {
-        buf.append(obj);
-      }
-    }
-
-    return buf.toString();
-  }
-
-  /**
-   * <p>Gets the leftmost {@code len} characters of a String.</p>
-   *
-   * <p>If {@code len} characters are not available, or the
-   * String is {@code null}, the String will be returned without
-   * an exception. An empty String is returned if len is negative.</p>
-   *
-   * <pre>
-   * StringUtils.left(null, *)    = null
-   * StringUtils.left(*, -ve)     = ""
-   * StringUtils.left("", *)      = ""
-   * StringUtils.left("abc", 0)   = ""
-   * StringUtils.left("abc", 2)   = "ab"
-   * StringUtils.left("abc", 4)   = "abc"
-   * </pre>
-   *
-   * <p>
-   * Copied from Apache Commons Lang org.apache.commons.lang3.StringUtils.
-   * </p>
-   *
-   * @param str  the String to get the leftmost characters from, may be null
-   * @param len  the length of the required String
-   * @return the leftmost characters, {@code null} if null String input
-   */
-  public static String left(final String str, final int len) {
-    if (str == null) {
-      return null;
-    }
-    if (len < 0) {
-      return EMPTY;
-    }
-    if (str.length() <= len) {
-      return str;
-    }
-    return str.substring(0, len);
-  }
-
-  /**
-   * Returns a quoted string.
-   *
-   * @param str a String
-   * @return {@code 'str'}
-   */
-  public static String quote(final String str) {
-    return QUOTE + str + QUOTE;
-  }
-
-  /**
-   * <p>
-   * Removes control characters (char &lt;= 32) from both ends of this String 
returning {@code null} if the String is
-   * empty ("") after the trim or if it is {@code null}.
-   *
-   * <p>
-   * The String is trimmed using {@link String#trim()}. Trim removes start and 
end characters &lt;= 32.
-   * </p>
-   *
-   * <pre>
-   * Strings.trimToNull(null)          = null
-   * Strings.trimToNull("")            = null
-   * Strings.trimToNull("     ")       = null
-   * Strings.trimToNull("abc")         = "abc"
-   * Strings.trimToNull("    abc    ") = "abc"
-   * </pre>
-   *
-   * <p>
-   * Copied from Apache Commons Lang 
org.apache.commons.lang3.StringUtils.trimToNull(String)
-   * </p>
-   *
-   * @param str the String to be trimmed, may be null
-   * @return the trimmed String, {@code null} if only chars &lt;= 32, empty or 
null String input
-   */
-  public static String trimToNull(final String str) {
-    final String ts = str == null ? null : str.trim();
-    return isEmpty(ts) ? null : ts;
-  }
-
-  private Strings() {
-    // empty
-  }
-
-  /**
-   * Shorthand for {@code str.toUpperCase(Locale.ROOT);}
-   * @param str The string to upper case.
-   * @return a new string
-   * @see String#toLowerCase(Locale)
-   */
-  public static String toRootUpperCase(final String str) {
-    return str.toUpperCase(Locale.ROOT);
-  }
-
-  /**
-   * Creates a new string repeating given {@code str} {@code count} times.
-   * @param str input string
-   * @param count the repetition count
-   * @return the new string
-   * @throws IllegalArgumentException if either {@code str} is null or {@code 
count} is negative
-   */
-  public static String repeat(final String str, final int count) {
-    Objects.requireNonNull(str, "str");
-    if (count < 0) {
-      throw new IllegalArgumentException("count");
-    }
-    StringBuilder sb = new StringBuilder(str.length() * count);
-    for (int index = 0; index < count; index++) {
-      sb.append(str);
-    }
-    return sb.toString();
-  }
-
-}

Reply via email to