* @param accessMap to receive accessElements
* @param accessElement to copy to access map
*/
private void addAllows(Map accessMap, SecurityAccess accessElement)
{
SecurityAllow allowElement = null;
String role = null;
String group = null;
Map ownerMap = null; // Map of owner allowed
Map roleMap = null; // Map of roles allowed
Map groupMap = null; // Map of groups allowed
Map groupRoleMap = null; // Map of group role allowed
Map userMap = null; // Map of users allowed
String userName = null;
List all = accessElement.getAllAllows();
if (all == null)
{
return;
}
// Add allows to the action Map
for (Iterator allowIterator = all.iterator(); allowIterator.hasNext();)
{
allowElement = (SecurityAllow) allowIterator.next();
role = null;
userName = null;
group = null;
// Add Owner
if (allowElement.isOwner() == true)
{
ownerMap = (Map) accessMap.get(OWNER_MAP);
if (ownerMap == null)
{
ownerMap = new HashMap();
accessMap.put(OWNER_MAP, ownerMap);
}
ownerMap.put(null, null);
}
// Add Role
role = allowElement.getRole();
group = allowElement.getGroup();
if (role != null)
{
// Role map
roleMap = (Map) accessMap.get(ROLE_MAP);
if (roleMap == null)
{
roleMap = new HashMap();
accessMap.put(ROLE_MAP, roleMap);
}
roleMap.put(role, null);
// Group role map
groupRoleMap = (Map) accessMap.get(GROUP_ROLE_MAP);
if (groupRoleMap == null)
{
groupRoleMap = new HashMap();
accessMap.put(GROUP_ROLE_MAP, groupRoleMap);
}
if (group == null)
{
group = GroupManagement.DEFAULT_GROUP_NAME;
}
groupRoleMap.put(group+role, null);
}
// Add Group
if (group != null)
{
// Group map
groupMap = (Map) accessMap.get(GROUP_MAP);
if (groupMap == null)
{
groupMap = new HashMap();
accessMap.put(GROUP_MAP, groupMap);
}
groupMap.put(group, null);
// Group role map
groupRoleMap = (Map) accessMap.get(GROUP_ROLE_MAP);
if (groupRoleMap == null)
{
groupRoleMap = new HashMap();
accessMap.put(GROUP_ROLE_MAP, groupRoleMap);
}
if (role == null)
{
role = RoleManagement.DEFAULT_ROLE_NAME;
}
groupRoleMap.put(group+role, null);
}
// Add User
userName = allowElement.getUser();
if (userName != null)
{
userMap = (Map) accessMap.get(USER_MAP);
if (userMap == null)
{