On 28.1.15 8:10 , Johannes Birgmeier wrote:
In AdminPrincipal.java, somebody just complelely forgot about the
contract; while equals() returns:

return obj == this || obj instanceof AdminPrincipal;

, hashCode() returns

return adminId.hashCode();

, which breaks the hashCode/equals contract.

See https://issues.apache.org/jira/browse/JCR-3848

I'd also be interested in the types of issues your analyser is able to detect. One of the most common cases I see is breaking symmetry of equality. This is usually introduce by extending from an non abstract class and overriding equals. Can you deal with this?

On a more general note, will (parts) of your work be publicly available? For example as a stand alone utility of even better as plugin for find bugs or the like? I think this would be of tremendous value as equals implementations are notorious hard to get right. Any links are appreciated.

Michael

Reply via email to