You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tiles.apache.org by ap...@apache.org on 2009/10/06 20:34:05 UTC

svn commit: r822418 - in /tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles: BasicAttributeContext.java Definition.java

Author: apetrelli
Date: Tue Oct  6 18:34:05 2009
New Revision: 822418

URL: http://svn.apache.org/viewvc?rev=822418&view=rev
Log:
TILES-476
Added equals and hashCode in Definition and BasicAttributeContext.

Modified:
    tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/BasicAttributeContext.java
    tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Definition.java

Modified: tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/BasicAttributeContext.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/BasicAttributeContext.java?rev=822418&r1=822417&r2=822418&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/BasicAttributeContext.java (original)
+++ tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/BasicAttributeContext.java Tue Oct  6 18:34:05 2009
@@ -21,6 +21,8 @@
 
 package org.apache.tiles;
 
+import static org.apache.tiles.CompareUtil.*;
+
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.HashMap;
@@ -377,6 +379,24 @@
         cascadedAttributes.clear();
     }
 
+    /** {@inheritDoc} */
+    @Override
+    public boolean equals(Object obj) {
+        BasicAttributeContext bac = (BasicAttributeContext) obj;
+        return nullSafeEquals(templateAttribute, bac.templateAttribute)
+                && nullSafeEquals(preparer, bac.preparer)
+                && nullSafeEquals(attributes, bac.attributes)
+                && nullSafeEquals(cascadedAttributes, bac.cascadedAttributes);
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    public int hashCode() {
+        return nullSafeHashCode(templateAttribute) + nullSafeHashCode(preparer)
+                + nullSafeHashCode(attributes)
+                + nullSafeHashCode(cascadedAttributes);
+    }
+
     /**
      * Inherits the parent template attribute.
      *

Modified: tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Definition.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Definition.java?rev=822418&r1=822417&r2=822418&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Definition.java (original)
+++ tiles/framework/trunk/tiles-api/src/main/java/org/apache/tiles/Definition.java Tue Oct  6 18:34:05 2009
@@ -20,6 +20,8 @@
  */
 package org.apache.tiles;
 
+import static org.apache.tiles.CompareUtil.*;
+
 import java.util.Map;
 
 /**
@@ -275,10 +277,21 @@
         return inherit;
     }
 
+
+
+    /** {@inheritDoc} */
+    @Override
+    public boolean equals(Object obj) {
+        Definition def = (Definition) obj;
+        return nullSafeEquals(name, def.name)
+                && nullSafeEquals(inherit, def.inherit) && super.equals(def);
+    }
+
     /** {@inheritDoc} */
     @Override
     public int hashCode() {
-        return name != null ? name.hashCode() : 0;
+        return nullSafeHashCode(name) + nullSafeHashCode(inherit)
+                + super.hashCode();
     }
 
     /**