@Override public void setObject(final List<String> object) { entityTO.getResources().clear(); entityTO.getResources().addAll(object); } }, available).hideLabel().setOutputMarkupId(true));
@Override public List<String> getObject() { return new ArrayList<>(entityTO.getResources()); }
private void doExtractResources(final ContentHandler handler, final AnyTO anyTO) throws SAXException { if (anyTO.getResources().isEmpty()) { LOG.debug("No resources found for {}[{}]", anyTO.getClass().getSimpleName(), anyTO.getKey()); } else { AttributesImpl atts = new AttributesImpl(); handler.startElement("", "", "resources", null); for (String resourceName : anyTO.getResources()) { atts.clear(); atts.addAttribute("", "", ReportXMLConst.ATTR_NAME, ReportXMLConst.XSD_STRING, resourceName); handler.startElement("", "", "resource", atts); handler.endElement("", "", "resource"); } handler.endElement("", "", "resources"); } }
private void doExtractResources(final ContentHandler handler, final AnyTO anyTO) throws SAXException { if (anyTO.getResources().isEmpty()) { LOG.debug("No resources found for {}[{}]", anyTO.getClass().getSimpleName(), anyTO.getKey()); } else { AttributesImpl atts = new AttributesImpl(); handler.startElement("", "", "resources", null); for (String resourceName : anyTO.getResources()) { atts.clear(); atts.addAttribute("", "", ReportXMLConst.ATTR_NAME, ReportXMLConst.XSD_STRING, resourceName); handler.startElement("", "", "resource", atts); handler.endElement("", "", "resource"); } handler.endElement("", "", "resources"); } }
@Override public List<Triple<ConnObjectTO, ConnObjectWrapper, String>> get( final AnyTO any, final Collection<String> resources) { return ReconStatusUtils.getReconStatuses( AnyTypeKind.fromTOClass(any.getClass()), any.getKey(), any.getResources()).stream(). map(status -> Triple.<ConnObjectTO, ConnObjectWrapper, String>of( status.getRight().getOnSyncope(), new ConnObjectWrapper(any, status.getLeft(), status.getRight().getOnResource()), null)). collect(Collectors.toList()); } }
protected void fillTO( final AnyTO anyTO, final String realmFullPath, final Collection<? extends AnyTypeClass> auxClasses, final Collection<? extends PlainAttr<?>> plainAttrs, final Map<DerSchema, String> derAttrs, final Map<VirSchema, List<String>> virAttrs, final Collection<? extends ExternalResource> resources, final boolean details) { anyTO.setRealm(realmFullPath); anyTO.getAuxClasses().addAll(auxClasses.stream().map(Entity::getKey).collect(Collectors.toList())); plainAttrs.forEach(plainAttr -> { anyTO.getPlainAttrs().add(new AttrTO.Builder(). schema(plainAttr.getSchema().getKey()). values(plainAttr.getValuesAsStrings()).build()); }); derAttrs.forEach((schema, value) -> { anyTO.getDerAttrs().add(new AttrTO.Builder().schema(schema.getKey()).value(value).build()); }); virAttrs.forEach((schema, values) -> { anyTO.getVirAttrs().add(new AttrTO.Builder().schema(schema.getKey()).values(values).build()); }); anyTO.getResources().addAll(resources.stream().map(Entity::getKey).collect(Collectors.toSet())); }
List<StatusBean> statusBeans = actual.getResources().stream().map(resource -> { List<Pair<String, ReconStatus>> statuses = Collections.emptyList(); if (statusOnly) { } else { statusBeans.addAll(resources.stream(). filter(resource -> !anyTO.getResources().contains(resource)). map(resource -> { StatusBean statusBean = StatusUtils.getStatusBean(actual,
public <T extends AnyTO> StatusPanel( final String id, final T any, final IModel<List<StatusBean>> model, final List<Triple<ConnObjectTO, ConnObjectWrapper, String>> connObjects, final PageReference pageRef) { super(id); init(any, model, connObjects, pageRef, true); }
switch (resourcePatch.getOperation()) { case ADD_REPLACE: result.getResources().add(resourcePatch.getValue()); break; result.getResources().remove(resourcePatch.getValue());
switch (resourcePatch.getOperation()) { case ADD_REPLACE: result.getResources().add(resourcePatch.getValue()); break; result.getResources().remove(resourcePatch.getValue());
protected void provision(final Any<?> any, final Boolean enable, final ProvisioningReport result) { AnyTO before = getAnyTO(any.getKey()); List<String> noPropResources = new ArrayList<>(before.getResources()); noPropResources.remove(profile.getTask().getResource().getKey()); PropagationByResource propByRes = new PropagationByResource(); propByRes.add(ResourceOperation.CREATE, profile.getTask().getResource().getKey()); List<PropagationTaskInfo> taskInfos = propagationManager.getCreateTasks( any.getType().getKind(), any.getKey(), enable, propByRes, before.getVirAttrs(), noPropResources); if (!taskInfos.isEmpty()) { taskInfos.get(0).setBeforeObj(Optional.ofNullable(null)); PropagationReporter reporter = new DefaultPropagationReporter(); taskExecutor.execute(taskInfos.get(0), reporter); reportPropagation(result, reporter); } }
original.getResources().stream().filter(resource -> !updated.getResources().contains(resource)). forEach(resource -> { result.getResources().add(new StringPatchItem.Builder(). updated.getResources().stream().filter(resource -> !original.getResources().contains(resource)). forEach(resource -> { result.getResources().add(new StringPatchItem.Builder().
anyTO.getResources().addAll(template.getResources());
protected void deprovision(final Any<?> any, final ConnectorObject beforeObj, final ProvisioningReport result) { AnyTO before = getAnyTO(any.getKey()); List<String> noPropResources = new ArrayList<>(before.getResources()); noPropResources.remove(profile.getTask().getResource().getKey()); PropagationByResource propByRes = new PropagationByResource(); propByRes.add(ResourceOperation.DELETE, profile.getTask().getResource().getKey()); propByRes.addOldConnObjectKey(profile.getTask().getResource().getKey(), beforeObj.getUid().getUidValue()); List<PropagationTaskInfo> taskInfos = propagationManager.getDeleteTasks( any.getType().getKind(), any.getKey(), propByRes, noPropResources); if (!taskInfos.isEmpty()) { taskInfos.get(0).setBeforeObj(Optional.of(beforeObj)); PropagationReporter reporter = new DefaultPropagationReporter(); taskExecutor.execute(taskInfos.get(0), reporter); reportPropagation(result, reporter); } }
item.setStatus(updated.getEntity().getResources().contains(resource) ? Response.Status.BAD_REQUEST.getStatusCode() : Response.Status.OK.getStatusCode());
@Override protected void provision(final Any<?> any, final Boolean enabled, final ProvisioningReport result) { AnyTO before = getAnyTO(any.getKey()); List<String> noPropResources = new ArrayList<>(before.getResources()); noPropResources.remove(profile.getTask().getResource().getKey()); PropagationByResource propByRes = new PropagationByResource(); propByRes.add(ResourceOperation.CREATE, profile.getTask().getResource().getKey()); PropagationReporter reporter = taskExecutor.execute(propagationManager.getUserCreateTasks( before.getKey(), null, enabled, propByRes, before.getVirAttrs(), noPropResources), false); reportPropagation(result, reporter); }
&& !modelObject.getInnerObject().getResources().equals( UserWrapper.class.cast(modelObject).getPreviousUserTO().getResources())) {
anyTO.getPlainAttrs().addAll(anyCR.getPlainAttrs()); anyTO.getVirAttrs().addAll(anyCR.getVirAttrs()); anyTO.getResources().addAll(anyCR.getResources());
anyCR.getPlainAttrs().addAll(anyTO.getPlainAttrs()); anyCR.getVirAttrs().addAll(anyTO.getVirAttrs()); anyCR.getResources().addAll(anyTO.getResources());
protected List<ProvisioningReport> assign( final SyncDelta delta, final Provision provision, final AnyUtils anyUtils) throws JobExecutionException { if (!profile.getTask().isPerformCreate()) { LOG.debug("PullTask not configured for create"); finalize(UnmatchingRule.toEventName(UnmatchingRule.ASSIGN), Result.SUCCESS, null, null, delta); return Collections.<ProvisioningReport>emptyList(); } AnyTO anyTO = connObjectUtils.getAnyTO(delta.getObject(), profile.getTask(), provision, anyUtils); anyTO.getResources().add(profile.getTask().getResource().getKey()); ProvisioningReport result = new ProvisioningReport(); result.setOperation(ResourceOperation.CREATE); result.setAnyType(provision.getAnyType().getKey()); result.setStatus(ProvisioningReport.Status.SUCCESS); result.setName(getName(anyTO)); result.setUidValue(delta.getUid().getUidValue()); if (profile.isDryRun()) { result.setKey(null); finalize(UnmatchingRule.toEventName(UnmatchingRule.ASSIGN), Result.SUCCESS, null, null, delta); } else { for (PullActions action : profile.getActions()) { action.beforeAssign(profile, delta, anyTO); } create(anyTO, delta, UnmatchingRule.toEventName(UnmatchingRule.ASSIGN), provision, result); } return Collections.singletonList(result); }