private static void dumpOne(Component component, PrintWriter writer, String tab, DumpController listener) {
//whether to dump at all
boolean toDump = listener.onComponentDump(component);
if(toDump) {
try {
Operator oper = Operator.createOperator(component);
Hashtable componentDump = oper.getDump();
printTagOpening(writer, "component", tab);
writer.print(" operator=\"" +
oper.getClass().getName() + "\"");
printTagClosing(writer, "component");
Object[] keys = componentDump.keySet().toArray();
Arrays.sort(keys);
String name, value;
for(int i = 0; i < keys.length; i++) {