/* * Copyright 2010 Henry Coles * * Licensed 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.pitest.util; public class StringUtil { public static String join(final Iterable<String> strings, final String separator) { final StringBuilder sb = new StringBuilder(); String sep = ""; for (final String s : strings) { sb.append(sep).append(s); sep = separator; } return sb.toString(); } public static String newLine() { return System.getProperty("line.separator"); } public static String separatorLine(final char c) { return repeat(c, 80); } public static String separatorLine() { return repeat('-', 80); } public static String repeat(final char c, final int n) { return new String(new char[n]).replace('\0', c); } public static String escapeBasicHtmlChars(final String s) { final StringBuilder sb = new StringBuilder(); escapeBasicHtmlChars(s, sb); return sb.toString(); } public static void escapeBasicHtmlChars(final String s, final StringBuilder out) { for (int i = 0; i < s.length(); i++) { final char c = s.charAt(i); final int v = c; if ((v < 32) || (v > 127) || (v == 38) || (v == 39) || (v == 60) || (v == 62) || (v == 34)) { out.append('&'); out.append('#'); out.append(v); out.append(';'); } else { out.append(c); } } } public static boolean isNullOrEmpty(final String s) { return s == null || s.isEmpty(); } }