public Builder plainAttrs(final Collection<Attr> plainAttrs) { instance.getPlainAttrs().addAll(plainAttrs); return this; }
public Builder plainAttr(final Attr plainAttr) { instance.getPlainAttrs().add(plainAttr); return this; }
public Builder plainAttrs(final Attr... plainAttrs) { instance.getPlainAttrs().addAll(Arrays.asList(plainAttrs)); return this; }
@Override protected List<Attr> getAttrsFromTO(final MembershipTO membershipTO) { return membershipTO.getPlainAttrs().stream().sorted(attrComparator).collect(Collectors.toList()); }
private static void diff( final MembershipTO updated, final MembershipPatch result) { // 1. plain attributes result.getPlainAttrs().addAll(updated.getPlainAttrs().stream(). filter(attrTO -> !isEmpty(attrTO)). collect(Collectors.toSet())); // 2. virtual attributes result.getVirAttrs().clear(); result.getVirAttrs().addAll(updated.getVirAttrs()); }
private static void diff( final MembershipTO updated, final MembershipUR result) { // 1. plain attributes result.getPlainAttrs().addAll(updated.getPlainAttrs().stream(). filter(attr -> !isEmpty(attr)). collect(Collectors.toSet())); // 2. virtual attributes result.getVirAttrs().clear(); result.getVirAttrs().addAll(updated.getVirAttrs()); }
@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); }
@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; }
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(original).getMemberships().forEach(oMemb -> { GroupableRelatableTO.class.cast(updated).getMembership(oMemb.getGroupKey()).ifPresent(uMemb -> { oMemb.getPlainAttrs().stream(). filter(attr -> uMemb.getPlainAttr(attr.getSchema()).isPresent()). forEach(attr -> uMemb.getPlainAttrs().add(attr)); oMemb.getVirAttrs().stream(). filter(attr -> uMemb.getVirAttr(attr.getSchema()).isPresent()). if (updated instanceof GroupableRelatableTO) { GroupableRelatableTO.class.cast(updated).getMemberships().forEach(memb -> { memb.getPlainAttrs().removeIf(attr -> attr.getValues().isEmpty()); memb.getVirAttrs().removeIf(attr -> attr.getValues().isEmpty()); });
dateToMillis(membership.getPlainAttrs(), plainSchema); membership.getPlainAttrs().stream().map(attr -> { attr.setSchema(groupName.concat(SyncopeEnduserConstants.MEMBERSHIP_ATTR_SEPARATOR). concat(attr.getSchema())); userTO.getPlainAttrs().add(attr); }); membership.getPlainAttrs().clear(); membership.getDerAttrs().stream().map(attr -> { attr.setSchema(groupName.concat(SyncopeEnduserConstants.MEMBERSHIP_ATTR_SEPARATOR).
dateToMillis(membership.getPlainAttrs(), plainSchema); membership.getPlainAttrs().stream().map(attr -> { attr.setSchema(groupName.concat(SyncopeEnduserConstants.MEMBERSHIP_ATTR_SEPARATOR). concat(attr.getSchema())); userTO.getPlainAttrs().add(attr); }); membership.getPlainAttrs().clear(); membership.getDerAttrs().stream().map(attr -> { attr.setSchema(groupName.concat(SyncopeEnduserConstants.MEMBERSHIP_ATTR_SEPARATOR).
membership.getPlainAttrs().add(clone); membAttrs.add(attr); }); }).forEachOrdered(plainSchema -> { userTO.getMemberships().forEach(membership -> { millisToDate(membership.getPlainAttrs(), plainSchema); }); });
newMembershipTO.getPlainAttrs().addAll(membPatch.getPlainAttrs());
membership.getPlainAttrs().add(clone); membAttrs.add(attr); }); }).forEachOrdered(plainSchema -> { userTO.getMemberships().forEach(membership -> { millisToDate(membership.getPlainAttrs(), plainSchema); }); });
membershipTO.getPlainAttrs().stream(). filter(attrTO -> !attrTO.getValues().isEmpty()). forEach(attrTO -> {
return newMemb; }); membership.getPlainAttrs().add(attrTO);
newMembershipTO.getPlainAttrs().addAll(membPatch.getPlainAttrs());
protected MembershipTO getMembershipTO( final Collection<? extends PlainAttr<?>> plainAttrs, final Map<DerSchema, String> derAttrs, final Map<VirSchema, List<String>> virAttrs, final Membership<? extends Any<?>> membership) { MembershipTO membershipTO = new MembershipTO.Builder(). group(membership.getRightEnd().getKey(), membership.getRightEnd().getName()). build(); plainAttrs.forEach(plainAttr -> { membershipTO.getPlainAttrs().add(new AttrTO.Builder(). schema(plainAttr.getSchema().getKey()). values(plainAttr.getValuesAsStrings()). build()); }); derAttrs.forEach((schema, value) -> { membershipTO.getDerAttrs().add(new AttrTO.Builder(). schema(schema.getKey()). value(value). build()); }); virAttrs.forEach((schema, values) -> { membershipTO.getVirAttrs().add(new AttrTO.Builder(). schema(schema.getKey()). values(values). build()); }); return membershipTO; }