[jboss-cvs] JBossAS SVN: r111416 - projects/security/security-jboss-sx/branches/2.0.4.SP4_SECURITY-594/identity/src/main/java/org/jboss/security/identity/plugins.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri May 20 17:07:45 EDT 2011


Author: dehort
Date: 2011-05-20 17:07:44 -0400 (Fri, 20 May 2011)
New Revision: 111416

Modified:
   projects/security/security-jboss-sx/branches/2.0.4.SP4_SECURITY-594/identity/src/main/java/org/jboss/security/identity/plugins/SimpleRoleGroup.java
Log:
Checking in a potential fix for a ConcurrentModificationException that happens in the SimpleRoleGroup
[SECURITY-594]


Modified: projects/security/security-jboss-sx/branches/2.0.4.SP4_SECURITY-594/identity/src/main/java/org/jboss/security/identity/plugins/SimpleRoleGroup.java
===================================================================
--- projects/security/security-jboss-sx/branches/2.0.4.SP4_SECURITY-594/identity/src/main/java/org/jboss/security/identity/plugins/SimpleRoleGroup.java	2011-05-20 20:37:59 UTC (rev 111415)
+++ projects/security/security-jboss-sx/branches/2.0.4.SP4_SECURITY-594/identity/src/main/java/org/jboss/security/identity/plugins/SimpleRoleGroup.java	2011-05-20 21:07:44 UTC (rev 111416)
@@ -25,7 +25,7 @@
 import java.security.acl.Group;
 import java.util.ArrayList;
 import java.util.Collections;
-import java.util.Collection;
+import java.util.concurrent.CopyOnWriteArrayList;
 import java.util.Enumeration;
 import java.util.List;
 import java.util.Set;
@@ -174,7 +174,7 @@
       {
          //Dealing with another roleGroup
          RoleGroup anotherRG = (RoleGroup) anotherRole;
-         Collection<Role> anotherRoles = Collections.synchronizedCollection(anotherRG.getRoles());
+         CopyOnWriteArrayList<Role> anotherRoles = new CopyOnWriteArrayList<Role>(anotherRG.getRoles());
          for (Role r : anotherRoles)
          {
             //if any of the roles are not there, no point checking further
@@ -194,7 +194,7 @@
    {
       if (anotherRole == null)
          throw new IllegalArgumentException("anotherRole is null");
-      Collection<Role> roleList = Collections.synchronizedCollection(anotherRole.getRoles());
+      CopyOnWriteArrayList<Role> roleList = new CopyOnWriteArrayList<Role>(anotherRole.getRoles());
       for (Role r : roleList)
       {
          if (this.containsAll(r))



More information about the jboss-cvs-commits mailing list