*/
public synchronized void start(Whiteboard whiteboard) {
checkState(registration == null, "Change processor started already");
final WhiteboardExecutor executor = new WhiteboardExecutor();
executor.start(whiteboard);
final BackgroundObserver observer = createObserver(executor);
registration = new CompositeRegistration(
registerObserver(whiteboard, observer),
registerMBean(whiteboard, EventListenerMBean.class,
tracker.getListenerMBean(), "EventListener", tracker.toString()),
new Registration() {
@Override
public void unregister() {
observer.close();
}
},
new Registration() {
@Override
public void unregister() {