You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by ss...@apache.org on 2008/11/17 23:24:40 UTC

svn commit: r718413 - /openjpa/branches/0.9.7-r547073/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/QueryImpl.java

Author: ssegu
Date: Mon Nov 17 14:24:39 2008
New Revision: 718413

URL: http://svn.apache.org/viewvc?rev=718413&view=rev
Log:
Fixed EOL, re-introduce change reverted in 718411 (643586 merge back from trunk)

Modified:
    openjpa/branches/0.9.7-r547073/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/QueryImpl.java

Modified: openjpa/branches/0.9.7-r547073/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/QueryImpl.java
URL: http://svn.apache.org/viewvc/openjpa/branches/0.9.7-r547073/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/QueryImpl.java?rev=718413&r1=718412&r2=718413&view=diff
==============================================================================
--- openjpa/branches/0.9.7-r547073/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/QueryImpl.java (original)
+++ openjpa/branches/0.9.7-r547073/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/QueryImpl.java Mon Nov 17 14:24:39 2008
@@ -1714,6 +1714,8 @@
             rs = 37 * rs + ((query == null) ? 0 : query.hashCode());
             rs = 37 * rs + ((language == null) ? 0 : language.hashCode());
             rs = 37 * rs + ((storeKey == null) ? 0 : storeKey.hashCode());
+            if (subclasses)
+              rs++;
             return rs;
         }
 
@@ -1728,18 +1730,16 @@
                 || !StringUtils.equals(key.query, query)
                 || !StringUtils.equals(key.language, language))
                 return false;
-
+            if (key.subclasses != subclasses)
+                return false;
             if (!ObjectUtils.equals(key.storeKey, storeKey))
                 return false;
 
             // allow either candidate type to be null because it might be
             // encoded in the query string, but if both are set then they
             // must be equal
-            if (candidateType != null && key.candidateType != null)
-                return candidateType == key.candidateType
-                    && subclasses == key.subclasses;
-
-            return true;
+            return key.candidateType == null || candidateType == null
+                || key.candidateType == candidateType;
         }
     }