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()); }
@Override protected MembershipPatch newInstance() { return new MembershipPatch(); }
public Builder group(final String group) { getInstance().setGroup(group); return this; } }
if (membPatch.getGroup() == null) { LOG.warn("Invalid {} specified: {}", MembershipPatch.class.getName(), membPatch); } else { result.getMemberships().stream(). filter(membership -> membPatch.getGroup().equals(membership.getGroupKey())). findFirst().ifPresent(memb -> result.getMemberships().remove(memb)); if (membPatch.getOperation() == PatchOperation.ADD_REPLACE) { MembershipTO newMembershipTO = new MembershipTO.Builder().group(membPatch.getGroup()).build(); newMembershipTO.getPlainAttrs().addAll(membPatch.getPlainAttrs()); newMembershipTO.getVirAttrs().addAll(membPatch.getVirAttrs());
filter((membPatch) -> (membPatch.getGroup() != null)).forEachOrdered(membPatch -> { anyObject.getMembership(membPatch.getGroup()).ifPresent(membership -> { anyObject.remove(membership); membership.setLeftEnd(null); }); if (membPatch.getOperation() == PatchOperation.DELETE) { groupDAO.findAllResourceKeys(membership.getRightEnd().getKey()).stream(). filter(resource -> reasons.containsKey(resource)). if (membPatch.getOperation() == PatchOperation.ADD_REPLACE) { Group group = groupDAO.find(membPatch.getGroup()); if (group == null) { LOG.debug("Ignoring invalid group {}", membPatch.getGroup()); } else if (anyObject.getRealm().getFullPath().startsWith(group.getRealm().getFullPath())) { AMembership newMembership = entityFactory.newEntity(AMembership.class); membPatch.getPlainAttrs().forEach(attrTO -> { PlainSchema schema = getPlainSchema(attrTO.getSchema()); if (schema == null) {
if (membPatch.getGroup() == null) { LOG.warn("Invalid {} specified: {}", MembershipPatch.class.getName(), membPatch); } else { result.getMemberships().stream(). filter(membership -> membPatch.getGroup().equals(membership.getGroupKey())). findFirst().ifPresent(memb -> result.getMemberships().remove(memb)); if (membPatch.getOperation() == PatchOperation.ADD_REPLACE) { MembershipTO newMembershipTO = new MembershipTO.Builder().group(membPatch.getGroup()).build(); newMembershipTO.getPlainAttrs().addAll(membPatch.getPlainAttrs()); newMembershipTO.getVirAttrs().addAll(membPatch.getVirAttrs());
filter(membPatch -> membPatch.getGroup() != null).forEachOrdered((membPatch) -> { user.getMembership(membPatch.getGroup()).ifPresent(membership -> { user.remove(membership); membership.setLeftEnd(null); }); if (membPatch.getOperation() == PatchOperation.DELETE) { groupDAO.findAllResourceKeys(membership.getRightEnd().getKey()).stream(). filter(resource -> reasons.containsKey(resource)). if (membPatch.getOperation() == PatchOperation.ADD_REPLACE) { Group group = groupDAO.find(membPatch.getGroup()); if (group == null) { LOG.debug("Ignoring invalid group {}", membPatch.getGroup()); } else if (user.getRealm().getFullPath().startsWith(group.getRealm().getFullPath())) { UMembership newMembership = entityFactory.newEntity(UMembership.class); membPatch.getPlainAttrs().forEach(attrTO -> { PlainSchema schema = getPlainSchema(attrTO.getSchema()); if (schema == null) {
|| (!membershipPatch.getPlainAttrs().isEmpty() || !membershipPatch.getVirAttrs().isEmpty())) {
|| (!membershipPatch.getPlainAttrs().isEmpty() || !membershipPatch.getVirAttrs().isEmpty())) {