User: starksm
Date: 01/09/25 22:59:25
Modified: src/main/org/jboss/security/plugins JaasSecurityManager.java
Log:
Add a Set getUserRoles(Principal principal) method
Revision Changes Path
1.13 +33 -1
jbosssx/src/main/org/jboss/security/plugins/JaasSecurityManager.java
Index: JaasSecurityManager.java
===================================================================
RCS file:
/cvsroot/jboss/jbosssx/src/main/org/jboss/security/plugins/JaasSecurityManager.java,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- JaasSecurityManager.java 2001/08/11 21:17:39 1.12
+++ JaasSecurityManager.java 2001/09/26 05:59:25 1.13
@@ -10,6 +10,7 @@
import java.io.Serializable;
import java.util.Arrays;
import java.util.Enumeration;
+import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
@@ -54,7 +55,7 @@
@author <a href="[EMAIL PROTECTED]">Oleg Nitz</a>
@author [EMAIL PROTECTED]
- @version $Revision: 1.12 $
+ @version $Revision: 1.13 $
*/
public class JaasSecurityManager implements SubjectSecurityManager, RealmMapping
{
@@ -270,6 +271,37 @@
}
}
return hasRole;
+ }
+
+ /** Return the set of domain roles the principal has been assigned.
+ @return The Set<Principal> for the application domain roles that the
+ principal has been assigned.
+ */
+ public Set getUserRoles(Principal principal)
+ {
+ HashSet userRoles = null;
+ Subject subject = getActiveSubject();
+ if( subject != null )
+ {
+ DomainInfo info = null;
+ if( domainCache != null )
+ info = (DomainInfo) domainCache.get(principal);
+
+ Group roles = null;
+ if( info != null )
+ roles = info.roles;
+ if( roles != null )
+ {
+ userRoles = new HashSet();
+ Enumeration members = roles.members();
+ while( members.hasMoreElements() )
+ {
+ Principal role = (Principal) members.nextElement();
+ userRoles.add(role);
+ }
+ }
+ }
+ return userRoles;
}
/** Validates operational environment Principal against the specified
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development