@JsonIgnore @Override public Optional<MembershipTO> getMembership(final String groupKey) { return memberships.stream().filter(membership -> groupKey.equals(membership.getGroupKey())).findFirst(); }
@JsonIgnore @Override public Optional<MembershipTO> getMembership(final String groupKey) { return memberships.stream().filter(membership -> groupKey.equals(membership.getGroupKey())).findFirst(); }
@JsonIgnore @Override public Optional<MembershipTO> getMembership(final String groupKey) { return memberships.stream().filter(membership -> groupKey.equals(membership.getGroupKey())).findFirst(); }
@JsonIgnore @Override public Optional<MembershipTO> getMembership(final String groupKey) { return memberships.stream().filter(membership -> groupKey.equals(membership.getGroupKey())).findFirst(); }
@JsonIgnore @Override public Optional<MembershipTO> getMembership(final String groupKey) { return memberships.stream().filter(membership -> groupKey.equals(membership.getGroupKey())).findFirst(); }
public static Map<String, MembershipTO> buildMembershipMap(final Collection<MembershipTO> memberships) { Map<String, MembershipTO> result = new HashMap<>(memberships.size()); memberships.forEach(memb -> result.put(memb.getGroupKey(), memb)); return Collections.unmodifiableMap(result); }
@JsonIgnore @Override public Optional<MembershipTO> getMembership(final String groupKey) { return memberships.stream().filter(membership -> groupKey.equals(membership.getGroupKey())).findFirst(); }
public static Map<String, MembershipTO> buildMembershipMap(final Collection<MembershipTO> memberships) { Map<String, MembershipTO> result = new HashMap<>(memberships.size()); memberships.forEach(memb -> result.put(memb.getGroupKey(), memb)); return Collections.unmodifiableMap(result); }
private void fillMemberships(final GroupableRelatableTO any, final GroupableRelatableTO template) { template.getMemberships().stream(). filter(membership -> !any.getMembership(membership.getGroupKey()).isPresent()). forEachOrdered(membership -> { any.getMemberships().add(membership); }); }
protected List<String> getMembershipAuxClasses(final MembershipTO membershipTO, final String anyType) { try { final GroupTO groupTO = groupRestClient.read(membershipTO.getGroupKey()); return groupTO.getTypeExtension(anyType).get().getAuxClasses(); } catch (Exception e) { return Collections.emptyList(); } }
@Override protected void setAttrs(final MembershipTO membershipTO) { List<Attr> attrs = new ArrayList<>(); final Map<String, Attr> attrMap; if (GroupableRelatableTO.class.cast(anyTO).getMembership(membershipTO.getGroupKey()).isPresent()) { attrMap = EntityTOUtils.buildAttrMap(GroupableRelatableTO.class.cast(anyTO) .getMembership(membershipTO.getGroupKey()).get().getDerAttrs()); } else { attrMap = new HashMap<>(); } membershipSchemas.get(membershipTO.getGroupKey()).values().forEach(schema -> { Attr attrTO = new Attr(); attrTO.setSchema(schema.getKey()); if (attrMap.containsKey(schema.getKey())) { attrTO.getValues().addAll(attrMap.get(schema.getKey()).getValues()); } attrs.add(attrTO); }); membershipTO.getDerAttrs().clear(); membershipTO.getDerAttrs().addAll(attrs); }
@Override protected void setAttrs(final MembershipTO membershipTO) { List<Attr> attrs = new ArrayList<>(); final Map<String, Attr> attrMap; if (GroupableRelatableTO.class.cast(anyTO).getMembership(membershipTO.getGroupKey()).isPresent()) { attrMap = EntityTOUtils.buildAttrMap(GroupableRelatableTO.class.cast(anyTO) .getMembership(membershipTO.getGroupKey()).get().getPlainAttrs()); } else { attrMap = new HashMap<>(); } attrs.addAll(membershipSchemas.get(membershipTO.getGroupKey()).values().stream(). map(schema -> { Attr attrTO = new Attr(); attrTO.setSchema(schema.getKey()); if (attrMap.get(schema.getKey()) == null || attrMap.get(schema.getKey()).getValues().isEmpty()) { attrTO.getValues().add(StringUtils.EMPTY); } else { attrTO.getValues().addAll(attrMap.get(schema.getKey()).getValues()); } return attrTO; }).collect(Collectors.toList())); membershipTO.getPlainAttrs().clear(); membershipTO.getPlainAttrs().addAll(attrs); }
@Override protected void setAttrs(final MembershipTO membershipTO) { List<Attr> attrs = new ArrayList<>(); final Map<String, Attr> attrMap; if (GroupableRelatableTO.class.cast(anyTO).getMembership(membershipTO.getGroupKey()).isPresent()) { attrMap = EntityTOUtils.buildAttrMap(GroupableRelatableTO.class.cast(anyTO) .getMembership(membershipTO.getGroupKey()).get().getVirAttrs()); } else { attrMap = new HashMap<>(); } attrs.addAll(membershipSchemas.get(membershipTO.getGroupKey()).values().stream().map(schema -> { Attr attrTO = new Attr(); attrTO.setSchema(schema.getKey()); if (attrMap.containsKey(schema.getKey())) { attrTO.getValues().addAll(attrMap.get(schema.getKey()).getValues()); } else { attrTO.getValues().add(StringUtils.EMPTY); } return attrTO; }).collect(Collectors.toList())); membershipTO.getVirAttrs().clear(); membershipTO.getVirAttrs().addAll(attrs); }
@SuppressWarnings("unchecked") private List<MembershipTO> loadMembershipAttrs() { List<MembershipTO> memberships = new ArrayList<>(); try { membershipSchemas.clear(); for (MembershipTO membership : (List<MembershipTO>) PropertyResolver.getPropertyField( "memberships", anyTO).get(anyTO)) { setSchemas(membership.getGroupKey(), anyTypeClassRestClient.list(getMembershipAuxClasses(membership, anyTO.getType())). stream().map(EntityTO::getKey).collect(Collectors.toList())); setAttrs(membership); if (AbstractAttrs.this instanceof PlainAttrs && !membership.getPlainAttrs().isEmpty()) { memberships.add(membership); } else if (AbstractAttrs.this instanceof DerAttrs && !membership.getDerAttrs().isEmpty()) { memberships.add(membership); } else if (AbstractAttrs.this instanceof VirAttrs && !membership.getVirAttrs().isEmpty()) { memberships.add(membership); } } } catch (WicketRuntimeException | IllegalArgumentException | IllegalAccessException ex) { // ignore } return memberships; }
-> searchConditionBuilder.is("key").equalTo(membership.getGroupKey()).wrap()). collect(Collectors.toList()); if (assignedGroups.containsKey(membership.getGroupKey())) { membership.setGroupName(assignedGroups.get(membership.getGroupKey()).getName()); } else { toBeRemoved.add(membership);
/** * Retrieve dyn group memberships. */ private void reloadDynMemberships() { GroupFiqlSearchConditionBuilder searchConditionBuilder = SyncopeClient.getGroupSearchConditionBuilder(); List<CompleteCondition> conditions = GroupableRelatableTO.class.cast(anyTO).getDynMemberships(). stream().map(membership -> searchConditionBuilder.is("key").equalTo(membership.getGroupKey()).wrap()). collect(Collectors.toList()); dynMemberships = new ArrayList<>(); if (SyncopeConsoleSession.get().owns(StandardEntitlement.GROUP_SEARCH) && !conditions.isEmpty()) { dynMemberships.addAll(groupRestClient.search( SyncopeConstants.ROOT_REALM, searchConditionBuilder.or(conditions).query(), -1, -1, new SortParam<>("name", true), null).stream().map(GroupTO::getName).collect(Collectors.toList())); } }
private void completeUserObject(final UserTO userTO, final UserTO selfTO) { // memberships plain and virtual attrs userTO.getMemberships().forEach(updatedTOMemb -> { selfTO.getMemberships().stream(). filter(oldTOMemb -> updatedTOMemb.getGroupKey().equals(oldTOMemb.getGroupKey())). findFirst().ifPresent(oldTOMatchedMemb -> { if (!updatedTOMemb.getPlainAttrs().isEmpty()) { completeAttrs(updatedTOMemb.getPlainAttrs(), oldTOMatchedMemb.getPlainAttrs()); } if (!updatedTOMemb.getVirAttrs().isEmpty()) { completeAttrs(updatedTOMemb.getVirAttrs(), oldTOMatchedMemb.getVirAttrs()); } }); }); // plain attrs completeAttrs(userTO.getPlainAttrs(), selfTO.getPlainAttrs()); // virtual attrs completeAttrs(userTO.getVirAttrs(), selfTO.getVirAttrs()); }
private void completeUserObject(final UserTO userTO, final UserTO selfTO) { // memberships plain and virtual attrs userTO.getMemberships().forEach(updatedTOMemb -> { selfTO.getMemberships().stream(). filter(oldTOMemb -> updatedTOMemb.getGroupKey().equals(oldTOMemb.getGroupKey())). findFirst().ifPresent(oldTOMatchedMemb -> { if (!updatedTOMemb.getPlainAttrs().isEmpty()) { completeAttrs(updatedTOMemb.getPlainAttrs(), oldTOMatchedMemb.getPlainAttrs()); } if (!updatedTOMemb.getVirAttrs().isEmpty()) { completeAttrs(updatedTOMemb.getVirAttrs(), oldTOMatchedMemb.getVirAttrs()); } }); }); // plain attrs completeAttrs(userTO.getPlainAttrs(), selfTO.getPlainAttrs()); // virtual attrs completeAttrs(userTO.getVirAttrs(), selfTO.getVirAttrs()); }
GroupableRelatableTO.class.cast(updated).getMembership(oMemb.getGroupKey()).ifPresent(uMemb -> { oMemb.getPlainAttrs().stream(). filter(attr -> uMemb.getPlainAttr(attr.getSchema()).isPresent()).
} else { result.getMemberships().stream(). filter(membership -> membPatch.getGroup().equals(membership.getGroupKey())). findFirst().ifPresent(memb -> result.getMemberships().remove(memb));