private static String getSubmittedFileName(Part part) { for (String cd : part.getHeader("content-disposition").split(";")) { if (cd.trim().startsWith("filename")) { String fileName = cd.substring(cd.indexOf('=') + 1).trim().replace("\"", ""); return fileName.substring(fileName.lastIndexOf('/') + 1).substring(fileName.lastIndexOf('\\') + 1); // MSIE fix. } } return null; }
@VisibleForTesting static String getClassName(String filename) { int classNameEnd = filename.length() - CLASS_FILE_NAME_EXTENSION.length(); return filename.substring(0, classNameEnd).replace('/', '.'); }
/** Add an header line containing a field name, a literal colon, and a value. */ public Builder add(String line) { int index = line.indexOf(":"); if (index == -1) { throw new IllegalArgumentException("Unexpected header: " + line); } return add(line.substring(0, index).trim(), line.substring(index + 1)); }
@Override Optional<String> chop(String str) { if (str.endsWith(suffix)) { return Optional.of(str.substring(0, str.length() - suffix.length())); } else { return Optional.absent(); } } };
private static @Nullable String convertDottedQuadToHex(String ipString) { int lastColon = ipString.lastIndexOf(':'); String initialPart = ipString.substring(0, lastColon + 1); String dottedQuad = ipString.substring(lastColon + 1); byte[] quad = textToNumericFormatV4(dottedQuad); if (quad == null) { return null; } String penultimate = Integer.toHexString(((quad[0] & 0xff) << 8) | (quad[1] & 0xff)); String ultimate = Integer.toHexString(((quad[2] & 0xff) << 8) | (quad[3] & 0xff)); return initialPart + penultimate + ":" + ultimate; }
private static String firstCharOnlyToUpper(String word) { return word.isEmpty() ? word : Ascii.toUpperCase(word.charAt(0)) + Ascii.toLowerCase(word.substring(1)); } }
@Override public String apply(String from) { return (from.length() == 0) ? from : from.substring(1); } }
@Override public String apply(String from) { return ((from == null) || "".equals(from)) ? null : from.substring(1); } };
@Override public Object apply(Integer v) throws Exception { return Thread.currentThread().getName().substring(0, 4); } }),
@Override public Object apply(Integer v) throws Exception { return Thread.currentThread().getName().substring(0, 4); } })
@Override public Object apply(Integer v) throws Exception { return Thread.currentThread().getName().substring(0, 4); } }),
@Override public Object apply(Integer v) throws Exception { return Thread.currentThread().getName().substring(0, 4); } }),
@Override public Object apply(Integer v) throws Exception { return Thread.currentThread().getName().substring(0, 4); } }),
@Override public Object apply(Integer v) throws Exception { return Thread.currentThread().getName().substring(0, 4); } }),
@Override public Object apply(Integer v) throws Exception { return Thread.currentThread().getName().substring(0, 4); } }),
@Override public Object apply(Integer v) throws Exception { return Thread.currentThread().getName().substring(0, 4); } })
/** Equivalent to {@code string.substring(pos, limit).trim()}. */ public static String trimSubstring(String string, int pos, int limit) { int start = skipLeadingAsciiWhitespace(string, pos, limit); int end = skipTrailingAsciiWhitespace(string, start, limit); return string.substring(start, end); }