public static SelectListDescriptor<SGroup> getChildrenOfGroup(final SGroup group, final QueryOptions queryOptions) { final Map<String, Object> parameters = Collections.singletonMap("groupPath", (Object) group.getPath()); return new SelectListDescriptor<SGroup>("getChildrenOfGroup", parameters, SGroup.class, queryOptions); }
public static SelectListDescriptor<SGroup> getChildrenOfGroup(final SGroup group, final QueryOptions queryOptions) { final Map<String, Object> parameters = Collections.singletonMap("groupPath", (Object) group.getPath()); return new SelectListDescriptor<SGroup>("getChildrenOfGroup", parameters, SGroup.class, queryOptions); }
@Override public void foundExistingGroup(final SGroup existingGroup, final ExportedGroup newGroup) throws ImportDuplicateInOrganizationException { throw new ImportDuplicateInOrganizationException("There's already a group with the path : " + existingGroup.getPath()); }
@Override public void foundExistingGroup(final SGroup existingGroup, final ExportedGroup newGroup) throws ImportDuplicateInOrganizationException { throw new ImportDuplicateInOrganizationException("There's already a group with the path : " + existingGroup.getPath()); }
private List<String> getGroups(SProfile profile) throws SBonitaReadException, SGroupNotFoundException { ArrayList<String> groups = new ArrayList<>(); int pageIndex = 0; List<SProfileMember> sProfileMembers; do { sProfileMembers = searchProfileMembers(pageIndex, profile.getId(), GROUP_SUFFIX); for (final SProfileMember sProfileMember : sProfileMembers) { groups.add(identityService.getGroup(sProfileMember.getGroupId()).getPath()); } pageIndex++; } while (sProfileMembers.size() > 0); return groups; }
private List<String> getGroups(SProfile profile) throws SBonitaReadException, SGroupNotFoundException { ArrayList<String> groups = new ArrayList<>(); int pageIndex = 0; List<SProfileMember> sProfileMembers; do { sProfileMembers = searchProfileMembers(pageIndex, profile.getId(), GROUP_SUFFIX); for (final SProfileMember sProfileMember : sProfileMembers) { groups.add(identityService.getGroup(sProfileMember.getGroupId()).getPath()); } pageIndex++; } while (sProfileMembers.size() > 0); return groups; }
private Map<String, Long> importGroups(final List<ExportedGroup> groupCreators) throws ImportDuplicateInOrganizationException, SIdentityException { final Map<String, Long> groupPathToIdMap = new HashMap<>(groupCreators.size()); for (final ExportedGroup groupCreator : groupCreators) { SGroup sGroup; try { final String groupPath = getGroupPath(groupCreator); sGroup = identityService.getGroupByPath(groupPath); strategy.foundExistingGroup(sGroup, groupCreator); } catch (final SGroupNotFoundException e) { sGroup = addGroup(groupCreator); } groupPathToIdMap.put(sGroup.getPath(), sGroup.getId()); } return groupPathToIdMap; }
private Map<String, Long> importGroups(final List<ExportedGroup> groupCreators) throws ImportDuplicateInOrganizationException, SIdentityException { final Map<String, Long> groupPathToIdMap = new HashMap<>(groupCreators.size()); for (final ExportedGroup groupCreator : groupCreators) { SGroup sGroup; try { final String groupPath = getGroupPath(groupCreator); sGroup = identityService.getGroupByPath(groupPath); strategy.foundExistingGroup(sGroup, groupCreator); } catch (final SGroupNotFoundException e) { sGroup = addGroup(groupCreator); } groupPathToIdMap.put(sGroup.getPath(), sGroup.getId()); } return groupPathToIdMap; }
@Override public long getNumberOfGroupChildren(final long parentGroupId) throws SIdentityException { try { final SGroup parentGroup = getGroup(parentGroupId); return persistenceService.selectOne(SelectDescriptorBuilder.getNumberOfGroupChildren(parentGroup.getPath())); } catch (final SBonitaReadException e) { throw new SIdentityException("Can't get the number children of group", e); } }
@Override public long getNumberOfGroupChildren(final long parentGroupId) throws SIdentityException { try { final SGroup parentGroup = getGroup(parentGroupId); return persistenceService.selectOne(SelectDescriptorBuilder.getNumberOfGroupChildren(parentGroup.getPath())); } catch (final SBonitaReadException e) { throw new SIdentityException("Can't get the number children of group", e); } }
private List<MembershipNode> getMemberships(SProfile profile) throws SBonitaReadException, SRoleNotFoundException, SGroupNotFoundException { ArrayList<MembershipNode> memberships = new ArrayList<>(); int pageIndex = 0; List<SProfileMember> sProfileMembers; do { sProfileMembers = searchProfileMembers(pageIndex, profile.getId(), ROLE_AND_GROUP_SUFFIX); for (final SProfileMember sProfileMember : sProfileMembers) { memberships.add(new MembershipNode(identityService.getGroup(sProfileMember.getGroupId()).getPath(), identityService.getRole(sProfileMember.getRoleId()).getName())); } pageIndex++; } while (sProfileMembers.size() > 0); return memberships; }
private List<MembershipNode> getMemberships(SProfile profile) throws SBonitaReadException, SRoleNotFoundException, SGroupNotFoundException { ArrayList<MembershipNode> memberships = new ArrayList<>(); int pageIndex = 0; List<SProfileMember> sProfileMembers; do { sProfileMembers = searchProfileMembers(pageIndex, profile.getId(), ROLE_AND_GROUP_SUFFIX); for (final SProfileMember sProfileMember : sProfileMembers) { memberships.add(new MembershipNode(identityService.getGroup(sProfileMember.getGroupId()).getPath(), identityService.getRole(sProfileMember.getRoleId()).getName())); } pageIndex++; } while (sProfileMembers.size() > 0); return memberships; }
private void addGroup(final Actor actor, final SActorMember sActorMember) throws SGroupNotFoundException { if (sActorMember.getGroupId() > 0 && sActorMember.getRoleId() <= 0) { final SGroup group = identityService.getGroup(sActorMember.getGroupId()); actor.addGroup(group.getPath()); } }
private void addGroup(final Actor actor, final SActorMember sActorMember) throws SGroupNotFoundException { if (sActorMember.getGroupId() > 0 && sActorMember.getRoleId() <= 0) { final SGroup group = identityService.getGroup(sActorMember.getGroupId()); actor.addGroup(group.getPath()); } }
@Override public Group createGroup(final GroupCreator creator) throws CreationException { if (creator == null) { throw new CreationException("Cannot create a null group"); } String groupName = creator.getFields().get(GroupCreator.GroupField.NAME).toString(); if (groupName.contains("/")) { throw new InvalidGroupNameException("Cannot create a group with '/' in its name"); } final TenantServiceAccessor tenantAccessor = getTenantAccessor(); final IdentityService identityService = tenantAccessor.getIdentityService(); if (creator.getFields().containsKey(GroupCreator.GroupField.ICON_NAME) || creator.getFields().containsKey(GroupCreator.GroupField.ICON_PATH)) { tenantAccessor.getTechnicalLoggerService().log(IdentityAPIImpl.class, TechnicalLogSeverity.WARNING, "setIconName and setIconPath are deprecated, use setIcon instead"); } final SGroup sGroup = ModelConvertor.constructSGroup(creator); try { identityService.getGroupByPath(sGroup.getPath()); throw new AlreadyExistsException("Group named \"" + sGroup.getName() + "\" already exists"); } catch (final SGroupNotFoundException ignored) { } try { identityService.createGroup(sGroup, (String) creator.getFields().get(GroupCreator.GroupField.ICON_FILENAME), (byte[]) creator.getFields().get(GroupCreator.GroupField.ICON_CONTENT)); } catch (SGroupCreationException e) { throw new CreationException(e); } return ModelConvertor.toGroup(sGroup); }
@Override public Group createGroup(final GroupCreator creator) throws CreationException { if (creator == null) { throw new CreationException("Cannot create a null group"); } String groupName = creator.getFields().get(GroupCreator.GroupField.NAME).toString(); if (groupName.contains("/")) { throw new InvalidGroupNameException("Cannot create a group with '/' in its name"); } final TenantServiceAccessor tenantAccessor = getTenantAccessor(); final IdentityService identityService = tenantAccessor.getIdentityService(); if (creator.getFields().containsKey(GroupCreator.GroupField.ICON_NAME) || creator.getFields().containsKey(GroupCreator.GroupField.ICON_PATH)) { tenantAccessor.getTechnicalLoggerService().log(IdentityAPIImpl.class, TechnicalLogSeverity.WARNING, "setIconName and setIconPath are deprecated, use setIcon instead"); } final SGroup sGroup = ModelConvertor.constructSGroup(creator); try { identityService.getGroupByPath(sGroup.getPath()); throw new AlreadyExistsException("Group named \"" + sGroup.getName() + "\" already exists"); } catch (final SGroupNotFoundException ignored) { } try { identityService.createGroup(sGroup, (String) creator.getFields().get(GroupCreator.GroupField.ICON_FILENAME), (byte[]) creator.getFields().get(GroupCreator.GroupField.ICON_CONTENT)); } catch (SGroupCreationException e) { throw new CreationException(e); } return ModelConvertor.toGroup(sGroup); }
private void addMembership(final Actor actor, final SActorMember sActorMember) throws SRoleNotFoundException, SGroupNotFoundException { if (sActorMember.getRoleId() > 0 && sActorMember.getGroupId() > 0) { final SRole role = identityService.getRole(sActorMember.getRoleId()); final SGroup group = identityService.getGroup(sActorMember.getGroupId()); actor.addMembership(group.getPath(), role.getName()); } }
private void addMembership(final Actor actor, final SActorMember sActorMember) throws SRoleNotFoundException, SGroupNotFoundException { if (sActorMember.getRoleId() > 0 && sActorMember.getGroupId() > 0) { final SRole role = identityService.getRole(sActorMember.getRoleId()); final SGroup group = identityService.getGroup(sActorMember.getGroupId()); actor.addMembership(group.getPath(), role.getName()); } }