@@ -127,11 +127,6 @@ cobbzilla-utils is available under the Apache License, version 2: http://www.apa | |||||
<artifactId>commons-beanutils</artifactId> | <artifactId>commons-beanutils</artifactId> | ||||
<version>${commons-beanutils.version}</version> | <version>${commons-beanutils.version}</version> | ||||
</dependency> | </dependency> | ||||
<dependency> | |||||
<groupId>org.apache.commons</groupId> | |||||
<artifactId>commons-collections4</artifactId> | |||||
<version>${commons-collections4.version}</version> | |||||
</dependency> | |||||
<dependency> | <dependency> | ||||
<groupId>org.apache.commons</groupId> | <groupId>org.apache.commons</groupId> | ||||
@@ -1,14 +0,0 @@ | |||||
package org.cobbzilla.util.collection; | |||||
import lombok.AllArgsConstructor; | |||||
import lombok.Getter; | |||||
import org.apache.commons.collections4.Transformer; | |||||
@AllArgsConstructor | |||||
public class StringPrefixTransformer implements Transformer { | |||||
@Getter private String prefix; | |||||
@Override public Object transform(Object input) { return prefix + input.toString(); } | |||||
} |
@@ -1,11 +0,0 @@ | |||||
package org.cobbzilla.util.collection; | |||||
import org.apache.commons.collections4.Transformer; | |||||
public class ToStringTransformer implements Transformer { | |||||
public static final ToStringTransformer instance = new ToStringTransformer(); | |||||
@Override public Object transform(Object o) { return o == null ? "null" : o.toString(); } | |||||
} |
@@ -8,7 +8,6 @@ import lombok.Getter; | |||||
import lombok.NoArgsConstructor; | import lombok.NoArgsConstructor; | ||||
import lombok.extern.slf4j.Slf4j; | import lombok.extern.slf4j.Slf4j; | ||||
import org.apache.commons.beanutils.MethodUtils; | import org.apache.commons.beanutils.MethodUtils; | ||||
import org.apache.commons.collections4.Transformer; | |||||
import org.apache.commons.lang3.ArrayUtils; | import org.apache.commons.lang3.ArrayUtils; | ||||
import org.cobbzilla.util.collection.ExpirationEvictionPolicy; | import org.cobbzilla.util.collection.ExpirationEvictionPolicy; | ||||
import org.cobbzilla.util.collection.ExpirationMap; | import org.cobbzilla.util.collection.ExpirationMap; | ||||
@@ -1125,30 +1124,6 @@ public class ReflectionUtil { | |||||
public static String caller(StackTraceElement s) { return s.getClassName() + "." + s.getMethodName() + ":" + s.getLineNumber(); } | public static String caller(StackTraceElement s) { return s.getClassName() + "." + s.getMethodName() + ":" + s.getLineNumber(); } | ||||
/** | |||||
* Replace any string values with their transformed values | |||||
* @param map a map of things | |||||
* @param transformer a transformer | |||||
* @return the same map, but if any value was a string, the transformer has been applied to it. | |||||
*/ | |||||
public static Map transformStrings(Map map, Transformer transformer) { | |||||
if (empty(map)) return map; | |||||
final Map setOps = new HashMap(); | |||||
for (Object entry : map.entrySet()) { | |||||
final Map.Entry e = (Map.Entry) entry; | |||||
if (e.getValue() instanceof String) { | |||||
setOps.put(e.getKey(), transformer.transform(e.getValue()).toString()); | |||||
} else if (e.getValue() instanceof Map) { | |||||
setOps.put(e.getKey(), transformStrings((Map) e.getValue(), transformer)); | |||||
} | |||||
} | |||||
for (Object entry : setOps.entrySet()) { | |||||
final Map.Entry e = (Map.Entry) entry; | |||||
map.put(e.getKey(), e.getValue()); | |||||
} | |||||
return map; | |||||
} | |||||
public static boolean isStaticFinalString(Field f) { return isStaticFinal(f, String.class, StringUtil.EMPTY); } | public static boolean isStaticFinalString(Field f) { return isStaticFinal(f, String.class, StringUtil.EMPTY); } | ||||
public static boolean isStaticFinalString(Field f, String prefix) { return isStaticFinal(f, String.class, prefix); } | public static boolean isStaticFinalString(Field f, String prefix) { return isStaticFinal(f, String.class, prefix); } | ||||
@@ -1,8 +1,6 @@ | |||||
package org.cobbzilla.util.string; | package org.cobbzilla.util.string; | ||||
import com.google.common.base.CaseFormat; | import com.google.common.base.CaseFormat; | ||||
import org.apache.commons.collections4.CollectionUtils; | |||||
import org.apache.commons.collections4.Transformer; | |||||
import org.apache.commons.io.input.ReaderInputStream; | import org.apache.commons.io.input.ReaderInputStream; | ||||
import org.apache.commons.lang3.ArrayUtils; | import org.apache.commons.lang3.ArrayUtils; | ||||
import org.apache.commons.lang3.LocaleUtils; | import org.apache.commons.lang3.LocaleUtils; | ||||
@@ -25,7 +23,6 @@ import java.nio.charset.StandardCharsets; | |||||
import java.text.NumberFormat; | import java.text.NumberFormat; | ||||
import java.util.*; | import java.util.*; | ||||
import java.util.concurrent.TimeUnit; | import java.util.concurrent.TimeUnit; | ||||
import java.util.function.Function; | |||||
import java.util.regex.Matcher; | import java.util.regex.Matcher; | ||||
import java.util.regex.Pattern; | import java.util.regex.Pattern; | ||||
@@ -46,16 +43,10 @@ public class StringUtil { | |||||
public static final char[] EMPTY_CHAR_ARRAY = {}; | public static final char[] EMPTY_CHAR_ARRAY = {}; | ||||
public static final String CRLF = "\r\n"; | public static final String CRLF = "\r\n"; | ||||
public static final Transformer XFORM_TO_STRING = o -> String.valueOf(o); | |||||
public static final String[] VOWELS = {"e", "a", "o", "i", "u"}; | public static final String[] VOWELS = {"e", "a", "o", "i", "u"}; | ||||
public static boolean isVowel(String symbol) { return ArrayUtils.indexOf(VOWELS, symbol) != -1; } | public static boolean isVowel(String symbol) { return ArrayUtils.indexOf(VOWELS, symbol) != -1; } | ||||
public static List<String> toStringCollection (Collection c) { | |||||
return new ArrayList<>(CollectionUtils.collect(c, XFORM_TO_STRING)); | |||||
} | |||||
public static String prefix(String s, int count) { | public static String prefix(String s, int count) { | ||||
return s == null ? null : s.length() > count ? s.substring(0, count) : s; | return s == null ? null : s.length() > count ? s.substring(0, count) : s; | ||||
} | } | ||||
@@ -228,22 +219,14 @@ public class StringUtil { | |||||
public static String toString (Collection c) { return toString(c, ","); } | public static String toString (Collection c) { return toString(c, ","); } | ||||
public static String toString (Collection c, String sep) { | public static String toString (Collection c, String sep) { | ||||
return toString(c, sep, null); | |||||
} | |||||
public static String toString (Collection c, String sep, Function<Object, String> transformer) { | |||||
StringBuilder builder = new StringBuilder(); | StringBuilder builder = new StringBuilder(); | ||||
for (Object o : c) { | for (Object o : c) { | ||||
if (builder.length() > 0) builder.append(sep); | if (builder.length() > 0) builder.append(sep); | ||||
builder.append(transformer != null ? transformer.apply(o) : o); | |||||
builder.append(o); | |||||
} | } | ||||
return builder.toString(); | return builder.toString(); | ||||
} | } | ||||
public static String sqlIn (Collection c) { return toString(c, ",", ESCAPE_SQL); } | |||||
public static final Function<Object, String> ESCAPE_SQL = o -> "'"+o.toString().replace("\'", "\'\'")+"'"; | |||||
public static String toString(Map map) { | public static String toString(Map map) { | ||||
if (map == null) return "null"; | if (map == null) return "null"; | ||||
final StringBuilder b = new StringBuilder("{"); | final StringBuilder b = new StringBuilder("{"); | ||||