// Copyright (C) 2003-2009 by Object Mentor, Inc. All rights reserved.
// Released under the terms of the CPL Common Public License version 1.0.
package util;
import java.util.Arrays;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public class StringUtil {
public static String join(List<?> strings, String delimiter) {
if (strings.isEmpty())
return "";
Iterator<?> i = strings.iterator();
StringBuffer joined = new StringBuffer((String) i.next());
while (i.hasNext()) {
String eachLine = (String) i.next();
joined.append(delimiter);
joined.append(eachLine);
}
return joined.toString();
}
public static String[] combineArrays(String[]... arrays) {
List<String> combinedList = new LinkedList<String>();
for (String[] array : arrays)
combinedList.addAll(Arrays.asList(array));
return combinedList.toArray(new String[combinedList.size()]);
}
public static boolean isBlank(String resource) {
return "".equals(resource);
}
public static String trimNonNullString(String original) {
return original != null ? original.trim() : original;
}
public static String replaceAll(String original, String target, String replacement) {
StringBuffer result = new StringBuffer();
int fromIndex = 0;
while (true) {
int foundIndex = original.indexOf(target, fromIndex);
if (foundIndex == -1) {
result.append(original.substring(fromIndex));
break;
}
result.append(original.substring(fromIndex, foundIndex));
result.append(replacement);
fromIndex = foundIndex + target.length();
}
return result.toString();
}
public static boolean stringsNullOrEqual(String s1, String s2) {
return (s1 == null && s2 == null) || (s1 != null && s2 != null && s1.equals(s2));
}
public static String stripCarriageReturns(String s) {
if (s == null)
return null;
else
return s.replaceAll("\r", "");
}
}