private List<org.apache.archiva.redback.rbac.Role> filterAssignableRoles( Collection<org.apache.archiva.redback.rbac.Role> roles ) { List<org.apache.archiva.redback.rbac.Role> assignableRoles = new ArrayList<org.apache.archiva.redback.rbac.Role>( roles.size() ); for ( org.apache.archiva.redback.rbac.Role r : roles ) { if ( r.isAssignable() ) { assignableRoles.add( r ); } } return assignableRoles; }
public List<Role> getAllAssignableRoles() throws RbacManagerException, RbacObjectNotFoundException { List<Role> assignableRoles = new ArrayList<Role>(); for ( Role r : getAllRoles() ) { Role role = getRole( r.getName() ); if ( role.isAssignable() ) { assignableRoles.add( role ); } } return assignableRoles; }
public Role( org.apache.archiva.redback.rbac.Role role ) { this.name = role.getName(); this.description = role.getDescription(); this.assignable = role.isAssignable(); this.childRoleNames = role.getChildRoleNames() == null ? new ArrayList<String>( 0 ) : new ArrayList<String>( role.getChildRoleNames() ); if ( role.getPermissions() == null ) { this.permissions = new ArrayList<Permission>( 0 ); } else { for ( org.apache.archiva.redback.rbac.Permission p : role.getPermissions() ) { this.permissions.add( new Permission( p ) ); } } }