List granted = ResourceUtil.getGrantedResource(LogonControllerFactory.getInstance().getSessionInfo(request),
PolicyConstants.AUTHENTICATION_SCHEMES_RESOURCE_TYPE);
// does the user have any other signonable authentication
// schemes?
boolean found = false;
SessionInfo info = LogonControllerFactory.getInstance().getSessionInfo(request);
for (Iterator iter = granted.iterator(); iter.hasNext();) {
AuthenticationScheme element = (DefaultAuthenticationScheme) iter.next();
if (element.getEnabled() && !element.isSystemScheme() && element.getResourceId() != this.getResourceId()) {
for (Iterator iterator = PolicyDatabaseFactory.getInstance().getPoliciesAttachedToResource(element,
info.getUser().getRealm()).iterator(); iterator.hasNext();) {
Policy policy = (Policy) iterator.next();
if (PolicyDatabaseFactory.getInstance().isPolicyGrantedToUser(policy,
LogonControllerFactory.getInstance().getSessionInfo(request).getUser())) {
found = true;
}