if (roles.length == 1) {
subject.checkRole(roles[0]);
return;
}
if (Logical.AND.equals(rrAnnotation.logical())) {
subject.checkRoles(Arrays.asList(roles));
return;
}
if (Logical.OR.equals(rrAnnotation.logical())) {
// Avoid processing exceptions unnecessarily - "delay" throwing the exception by calling hasRole first
boolean hasAtLeastOneRole = false;