for (OSecurityRole r : currentUser.getRoles()) {
identity = user.getIdentity(); } else if (identityType.equals("role")) { final Set<? extends OSecurityRole> roles = database.getUser().getRoles(); if (!roles.isEmpty()) identity = roles.iterator().next().getIdentity();
public ODocument getDefaultPerspective(ODatabaseDocument db, OSecurityUser user) { if(user!=null) { Object perspectiveObj = user.getDocument().field("perspective"); if(perspectiveObj!=null && perspectiveObj instanceof OIdentifiable) return (ODocument)((OIdentifiable)perspectiveObj).getRecord(); Set<? extends OSecurityRole> roles = user.getRoles(); ODocument perspective = null; for (OSecurityRole oRole : roles) { perspective = getPerspectiveForORole(oRole); if(perspective!=null) return perspective; } } ODocument perspective = getPerspectiveByName(db, DEFAULT_PERSPECTIVE); if(perspective==null) { perspective = runtimeRepairDefaultPerspective(); } return perspective; }
@Override public Roles getRoles() { Roles ret = new Roles(); if(isSignedIn()) { Set<? extends OSecurityRole> roles = getUser().getRoles(); for (OSecurityRole oRole : roles) { ret.add(oRole.getName()); OSecurityRole parent = oRole.getParentRole(); while(parent!=null && !ret.contains(parent.getName())) { ret.add(parent.getName()); parent = parent.getParentRole(); } } } return ret; }
@Override public Roles getRoles() { Roles ret = new Roles(); if(isSignedIn()) { Set<? extends OSecurityRole> roles = getUser().getRoles(); for (OSecurityRole oRole : roles) { ret.add(oRole.getName()); OSecurityRole parent = oRole.getParentRole(); while(parent!=null && !ret.contains(parent.getName())) { ret.add(parent.getName()); parent = parent.getParentRole(); } } } return ret; }