public void process(Context context) throws TransformerException {
if(level.isGreaterOrEqual(maxLevel)) {
if(logger == null) {
Emitter emitter = context.getController().getMessageEmitter();
if (emitter==null) {
emitter = context.getController().makeMessageEmitter();
}
if (emitter.getWriter()==null) {
emitter.setWriter(new OutputStreamWriter(System.err));
}
output(context, emitter);
} else {
Emitter emitter = new XMLEmitter();
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
emitter.setWriter(pw);
output(context, emitter);
LogUtils.log(logger, level, sw.toString());
}
}
}