[jboss-cvs] JBossAS SVN: r86497 - branches/Branch_4_2/security/src/main/org/jboss/security.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Mar 30 21:04:56 EDT 2009


Author: mmoyses
Date: 2009-03-30 21:04:56 -0400 (Mon, 30 Mar 2009)
New Revision: 86497

Modified:
   branches/Branch_4_2/security/src/main/org/jboss/security/SimplePrincipal.java
Log:
JBAS-6706: modify equals method to compare only instances of SimplePrincipal

Modified: branches/Branch_4_2/security/src/main/org/jboss/security/SimplePrincipal.java
===================================================================
--- branches/Branch_4_2/security/src/main/org/jboss/security/SimplePrincipal.java	2009-03-31 01:02:35 UTC (rev 86496)
+++ branches/Branch_4_2/security/src/main/org/jboss/security/SimplePrincipal.java	2009-03-31 01:04:56 UTC (rev 86497)
@@ -35,6 +35,7 @@
 {
    static final long serialVersionUID = 7701951188631723261L;
    private String name;
+   private static final String OVERRIDE_EQUALS_BEHAVIOR = "org.jboss.security.simpleprincipal.equals.override";
 
    public SimplePrincipal(String name)
    {
@@ -42,13 +43,20 @@
    }
 
    /**
-    * Compare instances of SimplePrincipals.
-    * @return true object is equal.
-    */
+    * Compare this SimplePrincipal's name against another Principal. If system property
+    * org.jboss.security.simpleprincipal.equals.override is set to true will only
+    * compare instances of SimplePrincipals.
+    * @return true if name equals another.getName();
+    **/
    public boolean equals(Object another)
    {
-      if (!(another instanceof SimplePrincipal))
+      if (!(another instanceof Principal))
          return false;
+      if ("true".equals(System.getProperty(OVERRIDE_EQUALS_BEHAVIOR, "false")))
+      {
+         if (!(another instanceof SimplePrincipal))
+            return false;
+      }
       String anotherName = ((Principal) another).getName();
       boolean equals = false;
       if (name == null)




More information about the jboss-cvs-commits mailing list