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();
}
}