Domanda

Devo implementare la classe decoratore di elenchi, che avvisa gli ascoltatori registrati in caso di eventuali cambiamenti nell'elenco. Ho sottoclassato AbstractListDecorator da org.apache.commons.collections15 e sovrascrivi metodi come add () , addAll () , remove (int) , remove (E) e così via con la mia notifica.

Ma ci sono alcuni buchi, ad esempio quando si scorre attraverso l'elenco per impostazione predefinita AbstractListDecorator.iterator () e si chiama il metodo Iterator.remove () , entrambi metodi annullati remove (int) o remove (E) non chiama.

Esistono pratiche standard e di sicurezza per decorare queste cose?

Grazie.

È stato utile?

Soluzione

sovrascrive i metodi iterator () e listIterator () e fornisce un iteratore decorato che avviserà i tuoi ascoltatori ogni volta che viene chiamato remove ().

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top