You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Dawid Weiss (JIRA)" <ji...@apache.org> on 2016/05/09 09:13:12 UTC
[jira] [Created] (LUCENE-7277) Make Query.hashCode and Query.equals
abstract
Dawid Weiss created LUCENE-7277:
-----------------------------------
Summary: Make Query.hashCode and Query.equals abstract
Key: LUCENE-7277
URL: https://issues.apache.org/jira/browse/LUCENE-7277
Project: Lucene - Core
Issue Type: Improvement
Reporter: Dawid Weiss
Assignee: Dawid Weiss
Priority: Trivial
Custom subclasses of the Query class have the default implementation of hashCode/equals that make all instances of the subclass equal. If somebody doesn't know this it can be pretty tricky to debug with IndexSearcher's query cache on.
Is there any rationale for declaring it this way instead of making those methods abstract (and enforcing their proper implementation in a subclass)?
{code}
public int hashCode() {
return getClass().hashCode();
}
public boolean equals(Object obj) {
if (obj == null)
return false;
return getClass() == obj.getClass();
}
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org