public void run() {
if (event instanceof NamingEvent) {
NamingEvent namingEvent = (NamingEvent) event;
namingEvent.dispatch(listener);
} else if (event instanceof NamingExceptionEvent) {
NamingExceptionEvent exceptionEvent = (NamingExceptionEvent) event;
listener.namingExceptionThrown(exceptionEvent);
} else if (event instanceof UnsolicitedNotificationEvent) {
UnsolicitedNotificationEvent namingEvent = (UnsolicitedNotificationEvent) event;
namingEvent
.dispatch((UnsolicitedNotificationListener) listener);