[jboss-cvs] JBossCache/src/org/jboss/cache/aop/collection ...
Ben Wang
bwang at jboss.com
Sun Sep 17 03:55:48 EDT 2006
User: bwang
Date: 06/09/17 03:55:48
Modified: src/org/jboss/cache/aop/collection Tag:
Branch_JBossCache_1_4_0 CachedMapImpl.java
CachedListAbstract.java
Log:
JBCACHE-765 Collection equals
Revision Changes Path
No revision
No revision
1.15.2.1 +3 -4 JBossCache/src/org/jboss/cache/aop/collection/CachedMapImpl.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: CachedMapImpl.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/src/org/jboss/cache/aop/collection/CachedMapImpl.java,v
retrieving revision 1.15
retrieving revision 1.15.2.1
diff -u -b -r1.15 -r1.15.2.1
--- CachedMapImpl.java 1 Jun 2006 03:56:44 -0000 1.15
+++ CachedMapImpl.java 17 Sep 2006 07:55:48 -0000 1.15.2.1
@@ -289,7 +289,7 @@
{
if (object == this)
return true;
- if (!(object instanceof Map))
+ if (object == null || !(object instanceof Map))
return false;
Map map = (Map) object;
if (size() != map.size())
@@ -304,8 +304,7 @@
}
}
else {
- if (map.get(key) == null
- || !map.containsKey(key))
+ if (! value.equals(map.get(key)))
return false;
}
}
1.3.2.1 +7 -5 JBossCache/src/org/jboss/cache/aop/collection/CachedListAbstract.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: CachedListAbstract.java
===================================================================
RCS file: /cvsroot/jboss/JBossCache/src/org/jboss/cache/aop/collection/CachedListAbstract.java,v
retrieving revision 1.3
retrieving revision 1.3.2.1
diff -u -b -r1.3 -r1.3.2.1
--- CachedListAbstract.java 5 Apr 2006 14:54:25 -0000 1.3
+++ CachedListAbstract.java 17 Sep 2006 07:55:48 -0000 1.3.2.1
@@ -123,10 +123,10 @@
public int hashCode()
{
- int result = 0;
+ int result = 1;
for (int i =0; i < size(); i++) {
Object o = get(i);
- result += (o == null ? 0 : o.hashCode());
+ result = 31 * result + (o == null ? 0 : o.hashCode());
}
return result;
}
@@ -135,14 +135,16 @@
{
if (object == this)
return true;
- if (!(object instanceof List))
+ if (object == null || !(object instanceof List))
return false;
List list = (List) object;
if (size() != list.size())
return false;
for (int i=0; i < list.size(); i++) {
- Object value = list.get(i);
- if( !contains(value) )
+ Object value1 = get(i);
+ Object value2 = list.get(i);
+ if( (value1 == null && value2 != null) ||
+ (value1 != null && !(value1.equals(value2))))
return false;
}
return true;
More information about the jboss-cvs-commits
mailing list