public S.Buffer buildViolationMessage(S.Buffer builder, String separator) { Map<String, ConstraintViolation> violations = violations(); if (violations.isEmpty()) return builder; for (Map.Entry<String, ConstraintViolation> entry : violations.entrySet()) { builder.append(entry.getKey()).append(": ").append(entry.getValue().getMessage()).append(separator); } int n = builder.length(); builder.delete(n - separator.length(), n); return builder; }
public static String i18n(Locale locale, String bundleName, Enum<?> msgId) { // #333 try `enum.transaction_type.pay_work=Pay work` first String key = S.newBuffer("enum.").append(S.underscore(msgId.getDeclaringClass().getSimpleName())).append(".").append(msgId.name().toLowerCase()).toString(); String resolved = _i18n(true, locale, bundleName, key); if (key == resolved || S.blank(resolved)) { // not found? then try `enum.transactiontype.pay_work=Pay work` key = S.newBuffer("enum.").append(msgId.getDeclaringClass().getSimpleName().toLowerCase()).append(".").append(msgId.name().toLowerCase()).toString(); resolved = _i18n(true, locale, bundleName, key); } return resolved; }
void appendTo(InsnList list, S.Buffer paramNames) { LdcInsnNode ldc = new LdcInsnNode(name); list.add(ldc); list.add(insnList); MethodInsnNode invokeRenderArg = new MethodInsnNode(INVOKEVIRTUAL, AsmTypes.ACTION_CONTEXT_INTERNAL_NAME, RENDER_NM, RENDER_DESC, false); list.add(invokeRenderArg); if (paramNames.length() != 0) { paramNames.append(','); } paramNames.append(name); }
public String fullUrl(String path, Object... args) { path = S.fmt(path, args); if (path.startsWith("//") || path.startsWith("http")) { return path; } if (path.contains(".") || path.contains("(")) { path = reverseRoute(path); } S.Buffer sb = S.newBuffer(urlBase()); path = ensureUrlContext(path); return sb.append(S.fmt(path, args)).toString(); }
private String buildDataLine(Object data, List<String> outputFields) { Iterator<String> itr = outputFields.iterator(); String prop = itr.next(); S.Buffer buf = S.buffer(); buf.append(getProperty(data, prop)); while (itr.hasNext()) { buf.append(",").append(getProperty(data, itr.next())); } return buf.toString(); }
@Override public String apply(ActionContext context) throws NotAppliedException, $.Break { TreeMap<String, String> keyValues = keyValues(context); S.Buffer buffer = S.newBuffer(base); for (Map.Entry<String, String> entry : keyValues.entrySet()) { buffer.append("-").append(entry.getKey()).append(":").append(entry.getValue()); } buffer.append(context.userAgent().isMobile() ? "M" : "B"); return buffer.toString(); }