question: private void sendChanged ( ServiceRegistrar reg , String [ ] curGroups ) { UnicastResponse resp = ( UnicastResponse ) registrars . get ( reg . getServiceID ( ) ) ; registrars . put ( reg . getServiceID ( ) , new UnicastResponse ( resp . getHost ( ) , resp . getPort ( ) , curGroups , resp . getRegistrar ( ) ) ) ; if ( ! listeners . isEmpty ( ) ) { addNotify ( ( ArrayList ) listeners . clone ( ) , mapRegToGroups ( reg , curGroups ) , CHANGED ) ; } }
target:  Convenience method that sends a changed event containing only one registrar to all registered listeners that are interested in such events. This method must be called from within a block that is synchronized on the registrars map.