@Override public <C extends Relationship> C lookupById(Class<C> attributedType, String id) throws IdentityManagementException { List<C> result = createRelationshipQuery(attributedType).setParameter (Relationship.ID, id) .getResultList(); if (!result.isEmpty()) { return result.get(0); } return null; }
@Override public <C extends Relationship> C lookupById(Class<C> attributedType, String id) throws IdentityManagementException { List<C> result = createRelationshipQuery(attributedType).setParameter (Relationship.ID, id) .getResultList(); if (!result.isEmpty()) { return result.get(0); } return null; }
private Set<Role> getRolesOfCurrentUser() { Set<Role> roles = new HashSet<Role>(); if (identity.isLoggedIn()) { RelationshipQuery<Grant> query = relationshipManager.createRelationshipQuery(Grant.class); query.setParameter(Grant.ASSIGNEE, identity.getAccount()); for (final Grant grant : query.getResultList()) { roles.add(new RoleImpl(grant.getRole().getName())); } } return roles; }
private Set<Role> getRolesOfCurrentUser() { Set<Role> roles = new HashSet<Role>(); if (identity.isLoggedIn()) { RelationshipQuery<Grant> query = relationshipManager.createRelationshipQuery(Grant.class); query.setParameter(Grant.ASSIGNEE, identity.getAccount()); for (final Grant grant : query.getResultList()) { roles.add(new RoleImpl(grant.getRole().getName())); } } return roles; }
@Override public <V extends Relationship> int countQueryResults(final IdentityContext context, final RelationshipQuery<V> query) { int limit = query.getLimit(); int offset = query.getOffset(); query.setLimit(0); query.setOffset(0); int resultCount = query.getResultList().size(); query.setLimit(limit); query.setOffset(offset); return resultCount; }
@Override public <V extends Relationship> int countQueryResults(final IdentityContext context, final RelationshipQuery<V> query) { int limit = query.getLimit(); int offset = query.getOffset(); query.setLimit(0); query.setOffset(0); int resultCount = query.getResultList().size(); query.setLimit(limit); query.setOffset(offset); return resultCount; }
query.setParameter(GroupRole.ROLE, role); boolean hasRole = !query.getResultList().isEmpty();
query.setParameter(GroupRole.ROLE, role); boolean hasRole = !query.getResultList().isEmpty();
query.setParameter(Grant.ROLE, role); for (Grant grant : query.getResultList()) { relationshipManager.remove(grant);
query.setParameter(Grant.ROLE, role); for (Grant grant : query.getResultList()) { relationshipManager.remove(grant);
@Override protected void doRemove(IdentityType attributedType) { RelationshipQuery<Relationship> query = this.relationshipManager.createRelationshipQuery(Relationship.class); query.setParameter(Relationship.IDENTITY, attributedType); for (Relationship relationship : query.getResultList()) { this.relationshipManager.remove(relationship); } if (this.permissionManager != null) { List<Permission> permissions = this.permissionManager.listPermissions(attributedType); for (Permission permission : permissions) { this.permissionManager.revokePermission(attributedType, permission.getResourceClass(), permission.getOperation()); } } IdentityContext identityContext = getIdentityContext(); getStoreSelector().getStoreForIdentityOperation(identityContext, IdentityStore.class, attributedType.getClass(), IdentityOperation.delete) .remove(identityContext, attributedType); }
@Override protected void doRemove(IdentityType attributedType) { RelationshipQuery<Relationship> query = this.relationshipManager.createRelationshipQuery(Relationship.class); query.setParameter(Relationship.IDENTITY, attributedType); for (Relationship relationship : query.getResultList()) { this.relationshipManager.remove(relationship); } if (this.permissionManager != null) { List<Permission> permissions = this.permissionManager.listPermissions(attributedType); for (Permission permission : permissions) { this.permissionManager.revokePermission(attributedType, permission.getResourceClass(), permission.getOperation()); } } IdentityContext identityContext = getIdentityContext(); getStoreSelector().getStoreForIdentityOperation(identityContext, IdentityStore.class, attributedType.getClass(), IdentityOperation.delete) .remove(identityContext, attributedType); }
List<GroupMembership> result = query.getResultList();
List<GroupMembership> result = query.getResultList();
/** * <p> Removes the given {@link Account} from the provided {@link Group}. </p> * * @param member A previously loaded {@link Account} instance. * @param group A previously loaded {@link Group} instance. * * @throws IdentityManagementException If the method fails. */ public static void removeFromGroup(RelationshipManager relationshipManager, Account member, Group group) throws IdentityManagementException { if (relationshipManager == null) { throw MESSAGES.nullArgument("RelationshipManager"); } if (member == null) { throw MESSAGES.nullArgument("Account"); } if (group == null) { throw MESSAGES.nullArgument("Group"); } RelationshipQuery<GroupMembership> query = relationshipManager.createRelationshipQuery(GroupMembership.class); query.setParameter(GroupMembership.MEMBER, member); query.setParameter(GroupMembership.GROUP, group); for (GroupMembership membership : query.getResultList()) { relationshipManager.remove(membership); } }
/** * <p> Removes the given {@link Account} from the provided {@link Group}. </p> * * @param member A previously loaded {@link Account} instance. * @param group A previously loaded {@link Group} instance. * * @throws IdentityManagementException If the method fails. */ public static void removeFromGroup(RelationshipManager relationshipManager, Account member, Group group) throws IdentityManagementException { if (relationshipManager == null) { throw MESSAGES.nullArgument("RelationshipManager"); } if (member == null) { throw MESSAGES.nullArgument("Account"); } if (group == null) { throw MESSAGES.nullArgument("Group"); } RelationshipQuery<GroupMembership> query = relationshipManager.createRelationshipQuery(GroupMembership.class); query.setParameter(GroupMembership.MEMBER, member); query.setParameter(GroupMembership.GROUP, group); for (GroupMembership membership : query.getResultList()) { relationshipManager.remove(membership); } }
query.setParameter(GroupRole.ROLE, role); List<GroupRole> result = query.getResultList();
query.setParameter(GroupRole.ROLE, role); List<GroupRole> result = query.getResultList();
query.setParameter(GroupRole.ROLE, role); for (GroupRole groupRole : query.getResultList()) { relationshipManager.remove(groupRole);
query.setParameter(GroupRole.ROLE, role); for (GroupRole groupRole : query.getResultList()) { relationshipManager.remove(groupRole);