[jboss-cvs] JBossAS SVN: r86494 - projects/security/security-jboss-sx/trunk/jbosssx/src/main/java/org/jboss/security.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Mar 30 20:06:15 EDT 2009


Author: mmoyses
Date: 2009-03-30 20:06:15 -0400 (Mon, 30 Mar 2009)
New Revision: 86494

Modified:
   projects/security/security-jboss-sx/trunk/jbosssx/src/main/java/org/jboss/security/SimplePrincipal.java
Log:
SECURITY-404: changing SimplePrincipal.equals to compare only instances of SimplePrincipal

Modified: projects/security/security-jboss-sx/trunk/jbosssx/src/main/java/org/jboss/security/SimplePrincipal.java
===================================================================
--- projects/security/security-jboss-sx/trunk/jbosssx/src/main/java/org/jboss/security/SimplePrincipal.java	2009-03-30 23:54:00 UTC (rev 86493)
+++ projects/security/security-jboss-sx/trunk/jbosssx/src/main/java/org/jboss/security/SimplePrincipal.java	2009-03-31 00:06:15 UTC (rev 86494)
@@ -35,6 +35,7 @@
 {
    private static final long serialVersionUID = 7701951188631723261L;
    private final String name;
+   private static final String OVERRIDE_EQUALS_BEHAVIOR = "org.jboss.security.simpleprincipal.equals.override";
 
    public SimplePrincipal(String name)
    {
@@ -42,14 +43,21 @@
    }
 
    /**
-    * 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();
     */
    @Override
    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