You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2022/02/22 18:59:35 UTC
[commons-codec] branch master updated: Validate byte and string. (#78)
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-codec.git
The following commit(s) were added to refs/heads/master by this push:
new 297f04d Validate byte and string. (#78)
297f04d is described below
commit 297f04da01e0ae2c18afc3a3667313adbf716fbe
Author: Arturo Bernal <ar...@gmail.com>
AuthorDate: Tue Feb 22 19:59:30 2022 +0100
Validate byte and string. (#78)
---
.../org/apache/commons/codec/binary/Base64.java | 2 +-
.../apache/commons/codec/binary/BaseNCodec.java | 6 +++---
.../apache/commons/codec/binary/BinaryCodec.java | 4 +++-
.../apache/commons/codec/language/Caverphone2.java | 4 +++-
.../commons/codec/language/SoundexUtils.java | 22 +++++++++++++++++++++-
5 files changed, 31 insertions(+), 7 deletions(-)
diff --git a/src/main/java/org/apache/commons/codec/binary/Base64.java b/src/main/java/org/apache/commons/codec/binary/Base64.java
index d40b3d4..616fe77 100644
--- a/src/main/java/org/apache/commons/codec/binary/Base64.java
+++ b/src/main/java/org/apache/commons/codec/binary/Base64.java
@@ -235,7 +235,7 @@ public class Base64 extends BaseNCodec {
*/
public static byte[] encodeBase64(final byte[] binaryData, final boolean isChunked,
final boolean urlSafe, final int maxResultSize) {
- if (binaryData == null || binaryData.length == 0) {
+ if (BinaryCodec.isEmpty(binaryData)) {
return binaryData;
}
diff --git a/src/main/java/org/apache/commons/codec/binary/BaseNCodec.java b/src/main/java/org/apache/commons/codec/binary/BaseNCodec.java
index b22f2a4..6595c0b 100644
--- a/src/main/java/org/apache/commons/codec/binary/BaseNCodec.java
+++ b/src/main/java/org/apache/commons/codec/binary/BaseNCodec.java
@@ -427,7 +427,7 @@ public abstract class BaseNCodec implements BinaryEncoder, BinaryDecoder {
*/
@Override
public byte[] decode(final byte[] pArray) {
- if (pArray == null || pArray.length == 0) {
+ if (BinaryCodec.isEmpty(pArray)) {
return pArray;
}
final Context context = new Context();
@@ -483,7 +483,7 @@ public abstract class BaseNCodec implements BinaryEncoder, BinaryDecoder {
*/
@Override
public byte[] encode(final byte[] pArray) {
- if (pArray == null || pArray.length == 0) {
+ if (BinaryCodec.isEmpty(pArray)) {
return pArray;
}
return encode(pArray, 0, pArray.length);
@@ -503,7 +503,7 @@ public abstract class BaseNCodec implements BinaryEncoder, BinaryDecoder {
* @since 1.11
*/
public byte[] encode(final byte[] pArray, final int offset, final int length) {
- if (pArray == null || pArray.length == 0) {
+ if (BinaryCodec.isEmpty(pArray)) {
return pArray;
}
final Context context = new Context();
diff --git a/src/main/java/org/apache/commons/codec/binary/BinaryCodec.java b/src/main/java/org/apache/commons/codec/binary/BinaryCodec.java
index b67ad4b..0c78e6d 100644
--- a/src/main/java/org/apache/commons/codec/binary/BinaryCodec.java
+++ b/src/main/java/org/apache/commons/codec/binary/BinaryCodec.java
@@ -136,8 +136,10 @@ public class BinaryCodec implements BinaryDecoder, BinaryEncoder {
* @param array
* the source array
* @return {@code true} if the given array is {@code null} or empty (size 0.)
+ *
+ * @since 1.16 change visibility to public
*/
- private static boolean isEmpty(final byte[] array) {
+ static boolean isEmpty(final byte[] array) {
return array == null || array.length == 0;
}
diff --git a/src/main/java/org/apache/commons/codec/language/Caverphone2.java b/src/main/java/org/apache/commons/codec/language/Caverphone2.java
index e11728a..1256d90 100644
--- a/src/main/java/org/apache/commons/codec/language/Caverphone2.java
+++ b/src/main/java/org/apache/commons/codec/language/Caverphone2.java
@@ -17,6 +17,8 @@
package org.apache.commons.codec.language;
+import org.apache.commons.codec.binary.StringUtils;
+
/**
* Encodes a string into a Caverphone 2.0 value.
*
@@ -43,7 +45,7 @@ public class Caverphone2 extends AbstractCaverphone {
@Override
public String encode(final String source) {
String txt = source;
- if (txt == null || txt.isEmpty()) {
+ if (SoundexUtils.isEmpty(txt)) {
return TEN_1;
}
diff --git a/src/main/java/org/apache/commons/codec/language/SoundexUtils.java b/src/main/java/org/apache/commons/codec/language/SoundexUtils.java
index 16dee9b..39282d1 100644
--- a/src/main/java/org/apache/commons/codec/language/SoundexUtils.java
+++ b/src/main/java/org/apache/commons/codec/language/SoundexUtils.java
@@ -19,6 +19,7 @@ package org.apache.commons.codec.language;
import org.apache.commons.codec.EncoderException;
import org.apache.commons.codec.StringEncoder;
+import org.apache.commons.codec.binary.StringUtils;
/**
* Utility methods for {@link Soundex} and {@link RefinedSoundex} classes.
@@ -38,7 +39,7 @@ final class SoundexUtils {
* @return A clean String.
*/
static String clean(final String str) {
- if (str == null || str.isEmpty()) {
+ if (isEmpty(str)) {
return str;
}
final int len = str.length();
@@ -120,4 +121,23 @@ final class SoundexUtils {
return diff;
}
+ /**
+ * <p>Checks if a CharSequence is empty ("") or null.</p>
+ *
+ * <pre>
+ * StringUtils.isEmpty(null) = true
+ * StringUtils.isEmpty("") = true
+ * StringUtils.isEmpty(" ") = false
+ * StringUtils.isEmpty("bob") = false
+ * StringUtils.isEmpty(" bob ") = false
+ * </pre>
+ *
+ * @param cs the CharSequence to check, may be null
+ * @return {@code true} if the CharSequence is empty or null
+ * @since 1.16
+ */
+ static boolean isEmpty(final CharSequence cs) {
+ return cs == null || cs.length() == 0;
+ }
+
}