JPolicyUserRoleMapping.java

00001 
00026 package org.objectweb.jonas.security.jacc;
00027 
00028 import java.util.HashMap;
00029 import java.util.Map;
00030 
00037 public class JPolicyUserRoleMapping {
00038 
00042     public static final String GLOBAL_CTXID = "global";
00043 
00048     private static Map jaccIdMappings = new HashMap();
00049 
00053     private JPolicyUserRoleMapping() {
00054     }
00055 
00062     public static void addUserToRoleMapping(String contextId, String principalName, String[] roles) {
00063         Map mapping = (Map) jaccIdMappings.get(contextId);
00064         if (mapping == null) {
00065             mapping = new HashMap();
00066             jaccIdMappings.put(contextId, mapping);
00067         }
00068         mapping.put(principalName, roles);
00069     }
00070 
00076     public static void addGlobalUserToRoleMapping(String principalName, String[] roles) {
00077         addUserToRoleMapping(GLOBAL_CTXID, principalName, roles);
00078     }
00079 
00087     public static String[] getMappingForPrincipal(String contextId, String principalName) {
00088         Map mapping = (Map) jaccIdMappings.get(contextId);
00089         if (mapping == null) {
00090             mapping = new HashMap();
00091             jaccIdMappings.put(contextId, mapping);
00092         }
00093         return (String[]) mapping.get(principalName);
00094     }
00095 
00102     public static String[] getGlobalMappingForPrincipal(String principalName) {
00103         return getMappingForPrincipal(GLOBAL_CTXID, principalName);
00104     }
00105 
00110     public static void removeUserToRoleMapping(String contextId) {
00111         jaccIdMappings.remove(contextId);
00112     }
00113 
00114 }

Generated on Tue Feb 15 15:05:21 2005 for JOnAS by  doxygen 1.3.9.1