本文整理了Java中com.evolveum.midpoint.prism.Item.getClonedValues()
方法的一些代码示例,展示了Item.getClonedValues()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Item.getClonedValues()
方法的具体详情如下:
包路径:com.evolveum.midpoint.prism.Item
类名称:Item
方法名:getClonedValues
暂无
代码示例来源:origin: Evolveum/midpoint
public static <V extends PrismValue, D extends ItemDefinition> ItemDelta<V, D> createAddDeltaFor(Item<V, D> item) {
ItemDelta<V, D> rv = item.createDelta(item.getPath());
rv.addValuesToAdd(item.getClonedValues());
return rv;
}
代码示例来源:origin: Evolveum/midpoint
public static <IV extends PrismValue,ID extends ItemDefinition> Item<IV,ID> parseValueElements(Collection<?> valueElements,
ID outputDefinition, String contextDescription) throws SchemaException {
Item<IV,ID> output = null;
for (Object valueElement: valueElements) {
RawType rawType = getRawType(valueElement, contextDescription);
Item<IV,ID> elementItem = rawType.getParsedItem(outputDefinition);
if (output == null) {
output = elementItem;
} else {
output.addAll(elementItem.getClonedValues());
}
}
return output;
}
代码示例来源:origin: Evolveum/midpoint
private <O extends ObjectType, I extends Item> Collection<PrismValue> getValuesToTake(PrismObject<O> objectLeft, PrismObject<O> objectRight,
String side, I origItem, MergeStrategyType strategy, Expression<PrismValue, ItemDefinition> valueExpression, Task task, OperationResult result)
throws ConfigurationException, SchemaException, ExpressionEvaluationException, ObjectNotFoundException, CommunicationException, SecurityViolationException {
if (origItem == null) {
return new ArrayList<>(0);
}
if (strategy == MergeStrategyType.TAKE) {
return cleanContainerIds(origItem.getClonedValues());
} else if (strategy == MergeStrategyType.EXPRESSION) {
if (valueExpression == null) {
throw new ConfigurationException("Expression strategy specified but no expression present");
}
List<PrismValue> origValues = origItem.getValues();
Collection<PrismValue> valuesToTake = new ArrayList<>(origValues.size());
for (PrismValue origValue: origValues) {
Collection<PrismValue> expressionOutput = evaluateValueExpression(objectLeft, objectRight, side, origValue, valueExpression, task, result);
if (expressionOutput != null) {
valuesToTake.addAll(expressionOutput);
}
}
return cleanContainerIds(valuesToTake);
} else {
throw new ConfigurationException("Unknown strategy "+strategy);
}
}
代码示例来源:origin: Evolveum/midpoint
public <IV extends PrismValue,ID extends ItemDefinition, I extends Item<IV,ID>,DD extends ItemDelta<IV,ID>>
DD findItemDelta(ItemPath propertyPath, Class<DD> deltaType, Class<I> itemType, boolean strict) {
if (changeType == ChangeType.ADD) {
I item = objectToAdd.findItem(propertyPath, itemType);
if (item == null) {
return null;
}
DD itemDelta = createEmptyDelta(propertyPath, item.getDefinition(), deltaType, item.getClass());
itemDelta.addValuesToAdd(item.getClonedValues());
return itemDelta;
} else if (changeType == ChangeType.MODIFY) {
return findModification(propertyPath, deltaType, strict);
} else {
return null;
}
}
代码示例来源:origin: Evolveum/midpoint
itemDelta.addValuesToAdd(item.getClonedValues());
Collection<PartiallyResolvedDelta<IV,ID>> deltas = new ArrayList<>(1);
deltas.add(new PartiallyResolvedDelta<>(itemDelta, partialValue.getResidualPath()));
代码示例来源:origin: Evolveum/midpoint
private <D extends ItemDelta> D findModification(ItemPath propertyPath, Class<D> deltaType, boolean strict) {
if (isModify()) {
return ItemDeltaCollectionsUtil.findItemDelta(modifications, propertyPath, deltaType, strict);
} else if (isAdd()) {
Item<PrismValue, ItemDefinition> item = getObjectToAdd().findItem(propertyPath);
if (item == null) {
return null;
}
D itemDelta = (D) item.createDelta();
itemDelta.addValuesToAdd(item.getClonedValues());
return itemDelta;
} else {
return null;
}
}
代码示例来源:origin: Evolveum/midpoint
private void handleObjectExtensionWholeContainer(RObject object, ItemDelta delta, PrismIdentifierGenerator idGenerator) {
RObjectExtensionType extType = computeObjectExtensionType(delta);
if (!delta.isAdd()) {
clearExtension(object, extType);
}
if (delta.isDelete()) {
return;
}
PrismContainerValue extension = (PrismContainerValue) delta.getAnyValue();
for (Item item : (List<Item>) extension.getItems()) {
ItemDelta itemDelta = item.createDelta();
itemDelta.setValuesToReplace(item.getClonedValues());
processAnyExtensionDeltaValues(itemDelta, object, extType, null, null, idGenerator);
}
}
代码示例来源:origin: Evolveum/midpoint
private void handleAssignmentExtensionWholeContainer(RAssignment assignment, ItemDelta delta, PrismIdentifierGenerator idGenerator) {
RAssignmentExtension ext = assignment.getExtension();
if (!delta.isAdd()) {
if (ext != null) {
clearExtension(ext);
}
}
if (delta.isDelete()) {
return;
}
if (ext == null) {
ext = new RAssignmentExtension();
ext.setOwner(assignment);
assignment.setExtension(ext);
}
PrismContainerValue extension = (PrismContainerValue) delta.getAnyValue();
for (Item item : (List<Item>) extension.getItems()) {
ItemDelta itemDelta = item.createDelta();
itemDelta.setValuesToReplace(item.getClonedValues());
processAnyExtensionDeltaValues(itemDelta, null, null, ext,
RAssignmentExtensionType.EXTENSION, idGenerator);
}
}
代码示例来源:origin: Evolveum/midpoint
Item<IV,ID> item = partialValue.getItem();
itemDelta = item.createDelta();
itemDelta.addValuesToAdd(item.getClonedValues());
} else {
Item<IV,ID> item = partialValue.getItem();
itemDelta = item.createDelta();
itemDelta.addValuesToDelete(item.getClonedValues());
} else {
代码示例来源:origin: Evolveum/midpoint
itemDelta.addValuesToAdd(otherItem.getClonedValues());
if (!itemDelta.isEmpty()) {
((Collection)deltas).add(itemDelta);
代码示例来源:origin: Evolveum/midpoint
outputFocusItemDelta.addValuesToAdd(shouldBeItem.getClonedValues());
内容来源于网络,如有侵权,请联系作者删除!