Github user garydgregory commented on a diff in the pull request:
https://github.com/apache/commons-lang/pull/278#discussion_r161277512
--- Diff: src/main/java/org/apache/commons/lang3/StringUtils.java ---
@@ -7429,6 +7429,55 @@ public static String defaultString(final String str,
final String defaultStr) {
return isEmpty(str) ? defaultStr : str;
}
+ // Extensions
+
//-----------------------------------------------------------------------
+
+ /**
+ * <p>Returns either the passed in String with the specified prefix
and suffix attached,
+ * or if the String is whitespace, empty ("") or {@code null}, an
empty string.</p>
+ *
+ * <p>Whitespace is defined by {@link
Character#isWhitespace(char)}.</p>
+ *
+ * <pre>
+ * StringUtils.extendIfNotBlank(null, "pre-", "-post") = ""
+ * StringUtils.extendIfNotBlank("", "pre-", "-post") = ""
+ * StringUtils.extendIfNotBlank(" ", "pre-", "-post") = ""
+ * StringUtils.extendIfNotBlank("bat", "pre-", "-post") =
"pre-bat-bost"
+ * StringUtils.extendIfNotBlank("bat", null, "-post") = "bat-post"
+ * StringUtils.extendIfNotBlank("bat", "pre-", null) = "pre-bat"
+ * </pre>
+ * @param str the String to check, may be null
+ * @param prefix the string to prepend if not blank. Null will be
converted to empty string.
+ * @param suffix the string to append if not blank. Null will be
converted to empty string.
+ * @return the passed in String with prefix and suffix added, or empty
string
+ * @see StringUtils#defaultString(String, String)
+ */
+ public static String extendIfNotBlank(final String str, final String
prefix, final String suffix) {
+ return isBlank(str) ? "" : defaultString(prefix) + str +
defaultString(suffix);
--- End diff --
Reuse the EMPTY constant.
---