@Override public boolean hasRole( String roleName, Principal principal, String servletName, Set<Principal> principalRoles, String contextID, Subject callerSubject, List<String> roles) { if(roleName == null) throw PicketBoxMessages.MESSAGES.invalidNullArgument("roleName"); if(contextID == null) throw PicketBoxMessages.MESSAGES.invalidNullArgument("contextID"); if(callerSubject == null) throw PicketBoxMessages.MESSAGES.invalidNullArgument("callerSubject"); AuthorizationManager authzMgr = securityContext.getAuthorizationManager(); if(authzMgr == null) throw PicketBoxMessages.MESSAGES.invalidNullProperty("AuthorizationManager"); boolean hasTheRole = false; Map<String,Object> map = new HashMap<String,Object>(); map.put(ResourceKeys.ROLENAME, roleName); map.put(ResourceKeys.ROLEREF_PERM_CHECK, Boolean.TRUE); map.put(ResourceKeys.PRINCIPAL_ROLES, principalRoles); map.put(ResourceKeys.POLICY_REGISTRATION, getPolicyRegistration()); WebResource webResource = new WebResource(Collections.unmodifiableMap(map));