package com.revolsys.swing.builder; public abstract class AbstractUiBuilder implements UiBuilder { public final static String escapeHTML(final String value, final boolean escapeSpaces, final boolean escapeNewlines) { if (value == null) { return null; } final char[] content = new char[value.length()]; value.getChars(0, value.length(), content, 0); final StringBuilder result = new StringBuilder(); for (final char element : content) { switch (element) { case ' ': result.append(escapeSpaces ? " " : " "); break; // Added \n [Jon Aquino] case '\n': result.append(escapeNewlines ? "<BR>" : "\n"); break; case '!': result.append("!"); break; case '"': result.append("""); break; case '#': result.append("#"); break; case '$': result.append("$"); break; case '%': result.append("%"); break; case '&': result.append("&"); break; case '\'': result.append("'"); break; case '(': result.append("("); break; case ')': result.append(")"); break; case '*': result.append("*"); break; case '+': result.append("+"); break; case ',': result.append(","); break; case '-': result.append("-"); break; case '.': result.append("."); break; case '/': result.append("/"); break; case ':': result.append(":"); break; case ';': result.append(";"); break; case '<': result.append("<"); break; case '=': result.append("="); break; case '>': result.append(">"); break; case '?': result.append("?"); break; case '@': result.append("@"); break; case '[': result.append("["); break; case '\\': result.append("\"); break; case ']': result.append("]"); break; case '^': result.append("^"); break; case '_': result.append("_"); break; case '`': result.append("`"); break; case '{': result.append("{"); break; case '|': result.append("|"); break; case '}': result.append("}"); break; case '~': result.append("~"); break; default: result.append(element); } } return result.toString(); } private UiBuilderRegistry registry; /** * @return the registry */ @Override public UiBuilderRegistry getRegistry() { return this.registry; } /** * @param registry the registry to set */ @Override public void setRegistry(final UiBuilderRegistry registry) { this.registry = registry; } @Override public String toHtml(final Object object) { final StringBuilder s = new StringBuilder(); appendHtml(s, object); return s.toString(); } }