Mais um componente do Esfinge Framework liberado para download e com documentação completa no site! O Esfinge Comparison é um framework para realizar a comparação entre dois objetos da mesma classe, retornando as diferenças entre suas propriedades. Esse framework pode ser utilizado para recuperar a diferença entre duas versões da mesma entidade para questões de registro de auditoria (logging), para ressaltar as mudanças em um formulário, dentre outros possíveis usos? A grande inovação é que o algoritmo de comparação pode ser totalmente customizado com a adição de anotações que configuram como a comparação para cada propriedade deve ser realizada.
Dentre as funcionalidades do framework pode-se destacar a comparação de propriedades com objetos compostos, a comparação de listas, tratamento de referências circulares e a integração com as anotações do JPA. O framework ainda suporta extensões para o mecanismo de leitura de metadados, nas camadas de comparação e para a criação de novas anotações que customizam o algoritmo de comparação de uma propriedade.
Vale a pena conferir!