nclistener.objectAdded( new NamingEvent( rec.getEventContext(),
nclistener.objectRemoved( new NamingEvent( rec.getEventContext(),
    public void delete( NextInterceptor next, Name name ) throws NamingException    {        super.delete( next, name );        Attributes entry = nexus.lookup( name );        Set selecting = getSelectingSources( name, entry );        if ( selecting.isEmpty() )        {            return;        }        Iterator list = selecting.iterator();        while ( list.hasNext() )        {            EventSourceRecord rec = ( EventSourceRecord ) list.next();            NamingListener listener = rec.getNamingListener();            if ( listener instanceof NamespaceChangeListener )            {                NamespaceChangeListener nclistener = ( NamespaceChangeListener ) listener;                Binding binding = new Binding( name.toString(), entry, false );                nclistener.objectAdded( new NamingEvent( rec.getEventContext(),                        NamingEvent.OBJECT_REMOVED, binding, null, entry ) );            }            else if ( listener instanceof ObjectChangeListener )            {                ObjectChangeListener oclistener = ( ObjectChangeListener ) listener;                Binding binding = new Binding( name.toString(), entry, false );                oclistener.objectChanged( new NamingEvent( rec.getEventContext(),                        NamingEvent.OBJECT_REMOVED, binding, null, entry ) );            }            else            {                throw new IllegalStateException( "unrecognized event listener type: " + listener.getClass() );            }        }    }