Java: List implementação decorador com notificação
-
06-07-2019 - |
Pergunta
Eu preciso implementar Lista classe decorador, que notificam os ouvintes registrados em caso de qualquer mudança na lista. Eu tenho uma subclasse AbstractListDecorator
de org.apache.commons.collections15 substituir métodos como add()
, addAll()
, remove(int)
, remove(E)
e assim por diante com a minha notificação .
Mas existem alguns buracos no - por exemplo, quando a iteração através de Lista por AbstractListDecorator.iterator()
padrão e método Iterator.remove()
chamada, quer métodos substituídos remove(int)
ou remove(E)
não chama
Existe alguma prática padrão e segurança para decorar tais coisas?
Obrigado.
Solução
substituir o iterator () e ListIterator () métodos, e proporcionar um iterador decorados que irá notificar os seus ouvintes sempre remove () é chamado.