@Override public String getAnyType() { return provisionTO == null ? orgUnitTO == null ? null : SyncopeConstants.REALM_ANYTYPE : provisionTO.getAnyType(); }
public List<String> getAuxClasses() { return provisionTO == null ? Collections.<String>emptyList() : provisionTO.getAuxClasses(); }
public final void setProvisionTO(final ProvisionTO provisionTO) { this.provisionTO = provisionTO; this.orgUnitTO = null; if (this.items == null) { this.items = new ArrayList<>(); } else { this.items.clear(); } if (provisionTO.getMapping() != null) { this.items.addAll(provisionTO.getMapping().getItems()); } }
ProvisionTO provisionTO = new ProvisionTO(); provisionTO.setKey(provision.getKey()); provisionTO.setAnyType(provision.getAnyType().getKey()); provisionTO.setObjectClass(provision.getObjectClass().getObjectClassValue()); provisionTO.getAuxClasses().addAll(provision.getAuxClasses().stream(). map(Entity::getKey).collect(Collectors.toList())); provisionTO.setSyncToken(provision.getSerializedSyncToken()); provisionTO.setIgnoreCaseMatch(provision.isIgnoreCaseMatch()); if (provision.getUidOnCreate() != null) { provisionTO.setUidOnCreate(provision.getUidOnCreate().getKey()); provisionTO.setMapping(mappingTO); mappingTO.setConnObjectLink(provision.getMapping().getConnObjectLink()); populateItems(provision.getMapping().getItems(), mappingTO); provisionTO.getVirSchemas().add(virSchema.getKey()); itemTO.setPullJEXLTransformer(linkingMappingItem.getPullJEXLTransformer()); provisionTO.getMapping().getLinkingItems().add(itemTO); });
AnyType anyType = anyTypeDAO.find(provisionTO.getAnyType()); if (anyType == null) { LOG.debug("Invalid {} specified {}, ignoring...", AnyType.class.getSimpleName(), provisionTO.getAnyType()); } else { Provision provision = resource.getProvision(anyType).orElse(null); if (provisionTO.getObjectClass() == null) { SyncopeClientException sce = SyncopeClientException.build(ClientExceptionType.InvalidProvision); sce.getElements().add("Null " + ObjectClass.class.getSimpleName()); throw sce; provision.setObjectClass(new ObjectClass(provisionTO.getObjectClass())); for (String name : provisionTO.getAuxClasses()) { AnyTypeClass anyTypeClass = anyTypeClassDAO.find(name); if (anyTypeClass == null) { removeIf(anyTypeClass -> !provisionTO.getAuxClasses().contains(anyTypeClass.getKey())); provision.setIgnoreCaseMatch(provisionTO.isIgnoreCaseMatch()); if (StringUtils.isNotBlank(provisionTO.getUidOnCreate())) { PlainSchema uidOnCreate = plainSchemaDAO.find(provisionTO.getUidOnCreate()); if (uidOnCreate == null) { LOG.warn("Ignoring invalid schema for uidOnCreate(): {}", provisionTO.getUidOnCreate()); } else { provision.setUidOnCreate(uidOnCreate);
if (resourceProvision.getKey() == null) { provisions = this.resourceTO.getProvisions().stream(). filter(object -> !resourceProvision.getAnyType().equals(object.getAnyType())). collect(Collectors.toList()); } else { provisions = this.resourceTO.getProvisions().stream(). filter(object -> !resourceProvision.getKey().equals(object.getKey())). collect(Collectors.toList()); provisionTO.getMapping().getItems().clear(); provisionTO.getMapping().getItems().addAll(resourceProvision.getItems()); provisions.add(provisionTO);
public void setAnyType(final String anyType) { if (SyncopeConstants.REALM_ANYTYPE.equals(anyType)) { setOrgUnitTO(new OrgUnitTO()); } else { setProvisionTO(new ProvisionTO()); getProvisionTO().setAnyType(anyType); getProvisionTO().setMapping(new MappingTO()); } }
private void populateAnyTypes(final String resourceKey) { anyTypes.clear(); if (resourceKey != null) { ResourceTO resource = resourceRestClient.read(resourceKey); String adminRealm = getAdminRealm(resource.getConnector()); if (SyncopeConsoleSession.get().owns(StandardEntitlement.RESOURCE_READ, adminRealm)) { selectedResource = resource; selectedResource.getProvisions().forEach(provisionTO -> { anyTypes.put(provisionTO.getAnyType(), provisionTO.getObjectClass()); }); } } }
@Override public void onSubmit(final AjaxRequestTarget target) { try { if (resourceTO.getOrgUnit() != null) { checkConnObjectKeyCount(SyncopeConstants.REALM_ANYTYPE, resourceTO.getOrgUnit().getItems()); } new ArrayList<>(resourceTO.getProvisions()).stream(). filter(provision -> provision != null). forEachOrdered(provision -> { if (provision.getMapping() == null || provision.getMapping().getItems().isEmpty()) { resourceTO.getProvisions().remove(provision); } else { checkConnObjectKeyCount(provision.getAnyType(), provision.getMapping().getItems()); } }); resourceRestClient.update(resourceTO); SyncopeConsoleSession.get().info(getString(Constants.OPERATION_SUCCEEDED)); modal.close(target); } catch (Exception e) { LOG.error("While creating or updating {}", resourceTO, e); SyncopeConsoleSession.get().error(StringUtils.isBlank(e.getMessage()) ? e.getClass().getName() : e.getMessage()); } ((BasePage) pageRef.getPage()).getNotificationPanel().refresh(target); }
provision.setKey(null); if (provision.getMapping() != null) { for (ItemTO item : provision.getMapping().getItems()) { item.setKey(null); provision.getMapping().getLinkingItems().clear(); provision.getVirSchemas().clear();
@Override protected WizardModel buildModelSteps(final ResourceProvision resourceProvision, final WizardModel wizardModel) { wizardModel.add(new ObjectType(resourceProvision)); wizardModel.add(new AuxClasses(resourceProvision)); Mapping mapping = new Mapping(resourceProvision); mapping.setOutputMarkupId(true); ItemTransformersTogglePanel itemTransformers = new ItemTransformersTogglePanel(mapping, pageRef); addOuterObject(itemTransformers); JEXLTransformersTogglePanel jexlTransformers = new JEXLTransformersTogglePanel(mapping, pageRef); addOuterObject(jexlTransformers); if (resourceProvision.getProvisionTO() != null && resourceProvision.getProvisionTO().getMapping() == null) { resourceProvision.getProvisionTO().setMapping(new MappingTO()); } mapping.add(new ResourceMappingPanel( "mapping", resourceTO, adminRealm, resourceProvision, itemTransformers, jexlTransformers)); wizardModel.add(mapping); wizardModel.add(new ConnObjectLink(resourceProvision)); return wizardModel; }
public String getObjectClass() { return provisionTO == null ? orgUnitTO == null ? null : orgUnitTO.getObjectClass() : provisionTO.getObjectClass(); }
public void setIgnoreCaseMatch(final boolean ignoreCaseMatch) { if (provisionTO == null) { orgUnitTO.setIgnoreCaseMatch(ignoreCaseMatch); } else { provisionTO.setIgnoreCaseMatch(ignoreCaseMatch); } }
public boolean isIgnoreCaseMatch() { return provisionTO == null ? orgUnitTO.isIgnoreCaseMatch() : provisionTO.isIgnoreCaseMatch(); }
@JsonIgnore public Optional<ProvisionTO> getProvision(final String anyType) { return provisions.stream().filter( provision -> anyType != null && anyType.equals(provision.getAnyType())). findFirst(); }
public String getConnObjectLink() { return provisionTO == null ? orgUnitTO == null ? null : orgUnitTO.getConnObjectLink() : provisionTO.getMapping().getConnObjectLink(); }
@JsonIgnore public Optional<ProvisionTO> getProvision(final String anyType) { return provisions.stream().filter( provision -> anyType != null && anyType.equals(provision.getAnyType())). findFirst(); }
public void setConnObjectLink(final String connObjectLink) { if (provisionTO == null) { orgUnitTO.setConnObjectLink(connObjectLink); } else { provisionTO.getMapping().setConnObjectLink(connObjectLink); } }
anyType = anyTypeRestClient.read(provision.getAnyType()); } catch (Exception e) { LOG.error("Could not read AnyType {}", provision.getAnyType(), e);