@Override
public void publish(LogRecord record) {
Logger logger = Logger.getLogger("");
// this handler is no longer needed
logger.removeHandler(this);
// add new required handlers according to browser capabilities - and publish
int handlerIndex = logger.getHandlers().length;
LogController.addRequiredLogHanders(record);
// call publish on newly added handlers - no need because publish is called on them next
//LogController.getJsLogHandler().publish(record); // this handler is missed out - because its first?