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.

Foi útil?

Solução

substituir o iterator () e ListIterator () métodos, e proporcionar um iterador decorados que irá notificar os seus ouvintes sempre remove () é chamado.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top