@Override public AnyTypeTO getAnyTypeTO(final AnyType anyType) { AnyTypeTO anyTypeTO = new AnyTypeTO(); anyTypeTO.setKey(anyType.getKey()); anyTypeTO.setKind(anyType.getKind()); anyType.getClasses().forEach(anyTypeClass -> { anyTypeTO.getClasses().add(anyTypeClass.getKey()); }); return anyTypeTO; }
typeOwnClasses.addAll(any.getType().getClasses()); typeOwnClasses.addAll(any.getAuxClasses());
typeOwnClasses.addAll(any.getType().getClasses()); typeOwnClasses.addAll(any.getAuxClasses()); if (!typeOwnClasses.stream().anyMatch(clazz -> clazz.getPlainSchemas().contains(schema))) {
@Override public void update(final AnyType anyType, final AnyTypeTO anyTypeTO) { if (anyType.getKey() == null) { anyType.setKey(anyTypeTO.getKey()); } if (anyType.getKind() == null) { anyType.setKind(anyTypeTO.getKind()); } if (anyType.getKind() != anyTypeTO.getKind()) { SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.InvalidAnyType); sce.getElements().add(AnyTypeKind.class.getSimpleName() + " cannot be changed"); throw sce; } anyType.getClasses().clear(); anyTypeTO.getClasses().forEach(anyTypeClassName -> { AnyTypeClass anyTypeClass = anyTypeClassDAO.find(anyTypeClassName); if (anyTypeClass == null) { LOG.debug("Invalid " + AnyTypeClass.class.getSimpleName() + " {}, ignoring...", anyTypeClassName); } else { anyType.add(anyTypeClass); } }); }
@Override public void delete(final String key) { AnyTypeClass anyTypeClass = find(key); if (anyTypeClass == null) { return; } for (PlainSchema schema : plainSchemaDAO.findByAnyTypeClasses(Collections.singletonList(anyTypeClass))) { schema.setAnyTypeClass(null); } for (DerSchema schema : derSchemaDAO.findByAnyTypeClasses(Collections.singletonList(anyTypeClass))) { schema.setAnyTypeClass(null); } for (VirSchema schema : virSchemaDAO.findByAnyTypeClasses(Collections.singletonList(anyTypeClass))) { schema.setAnyTypeClass(null); } for (AnyType type : anyTypeDAO.findByTypeClass(anyTypeClass)) { type.getClasses().remove(anyTypeClass); } for (TypeExtension typeExt : groupDAO.findTypeExtensions(anyTypeClass)) { typeExt.getAuxClasses().remove(anyTypeClass); if (typeExt.getAuxClasses().isEmpty()) { typeExt.getGroup().getTypeExtensions().remove(typeExt); typeExt.setGroup(null); } } for (Provision provision : resourceDAO.findProvisionsByAuxClass(anyTypeClass)) { provision.getAuxClasses().remove(anyTypeClass); } entityManager().remove(anyTypeClass); }
anyTypeDAO.findUser().getClasses().forEach(anyTypeClass -> { allowedSchemas.getPlainSchemas().addAll(anyTypeClass.getPlainSchemas().stream(). map(Entity::getKey).collect(Collectors.toList()));
PLATFORM_INFO.getUserClasses().addAll(anyTypeDAO.findUser().getClasses().stream(). map(Entity::getKey).collect(Collectors.toList()));
anyTypeDAO.findUser().getClasses().forEach(anyTypeClass -> { allowedSchemas.getPlainSchemas().addAll(anyTypeClass.getPlainSchemas().stream(). map(Entity::getKey).collect(Collectors.toList()));
provision.getAnyType().getClasses().iterator(), provision.getAuxClasses().iterator()); itor.hasNext();) {