public static <T extends Containerable,O extends Objectable> ContainerDeltaImpl<T> createDelta(ItemPath containerPath, PrismContainerDefinition<O> objectDefinition) { PrismContainerDefinition<T> containerDefinition = objectDefinition.findContainerDefinition(containerPath); if (containerDefinition == null) { throw new IllegalArgumentException("No definition for "+containerPath+" in "+objectDefinition); } ContainerDeltaImpl<T> delta = new ContainerDeltaImpl<>(containerPath, containerDefinition, objectDefinition.getPrismContext()); return delta; }
private <IV extends PrismValue,ID extends ItemDefinition> Item<IV,ID> parseRawElement(Object element, PrismContainerDefinition<C> definition) throws SchemaException { JaxbDomHack jaxbDomHack = definition.getPrismContext().getJaxbDomHack(); return jaxbDomHack.parseRawElement(element, definition); }
public static <O extends Objectable, T> PropertyDelta<T> createReplaceDelta(PrismContainerDefinition<O> containerDefinition, QName propertyName, PrismPropertyValue<T>... pValues) { PrismPropertyDefinition<T> propertyDefinition = containerDefinition.findPropertyDefinition(ItemName.fromQName(propertyName)); if (propertyDefinition == null) { throw new IllegalArgumentException("No definition for "+propertyName+" in "+containerDefinition); } PropertyDelta<T> delta = new PropertyDeltaImpl<>(ItemName.fromQName(propertyName), propertyDefinition, containerDefinition.getPrismContext()); // hoping the prismContext is there Collection<PrismPropertyValue<T>> valuesToReplace = new ArrayList<>(pValues.length); for (PrismPropertyValue<T> pVal: pValues) { valuesToReplace.add(pVal); } delta.setValuesToReplace(valuesToReplace); return delta; }
public static <O extends Objectable, T> PropertyDelta<T> createReplaceDelta(PrismContainerDefinition<O> containerDefinition, QName propertyName, T... realValues) { PrismPropertyDefinition<T> propertyDefinition = containerDefinition.findPropertyDefinition(ItemName.fromQName(propertyName)); if (propertyDefinition == null) { throw new IllegalArgumentException("No definition for "+propertyName+" in "+containerDefinition); } PropertyDelta<T> delta = new PropertyDeltaImpl<>(ItemName.fromQName(propertyName), propertyDefinition, containerDefinition.getPrismContext()); // hoping the prismContext is there Collection<PrismPropertyValue<T>> valuesToReplace = delta.getValuesToReplace(); if (valuesToReplace == null) valuesToReplace = new ArrayList<>(realValues.length); for (T realVal: realValues) { valuesToReplace.add(new PrismPropertyValueImpl<>(realVal)); } delta.setValuesToReplace(valuesToReplace); return delta; }
public static <O extends Objectable> PropertyDelta createAddDelta(PrismContainerDefinition<O> containerDefinition, QName propertyName, Object... realValues) { PrismPropertyDefinition propertyDefinition = containerDefinition.findPropertyDefinition(ItemName.fromQName(propertyName)); if (propertyDefinition == null) { throw new IllegalArgumentException("No definition for "+propertyName+" in "+containerDefinition); } PropertyDelta delta = new PropertyDeltaImpl(ItemName.fromQName(propertyName), propertyDefinition, containerDefinition.getPrismContext()); // hoping the prismContext is there for (Object realVal: realValues) { delta.addValueToAdd(new PrismPropertyValueImpl<>(realVal)); } return delta; }
public static <O extends Objectable> PropertyDelta createDeleteDelta(PrismContainerDefinition<O> containerDefinition, QName propertyName, Object... realValues) { PrismPropertyDefinition propertyDefinition = containerDefinition.findPropertyDefinition(ItemName.fromQName(propertyName)); if (propertyDefinition == null) { throw new IllegalArgumentException("No definition for "+propertyName+" in "+containerDefinition); } PropertyDelta delta = new PropertyDeltaImpl(ItemName.fromQName(propertyName), propertyDefinition, containerDefinition.getPrismContext()); // hoping the prismContext is there for (Object realVal: realValues) { delta.addValueToDelete(new PrismPropertyValueImpl<>(realVal)); } return delta; }
PrismContext prismContext = definition.getPrismContext(); Item<IV,ID> subItem; if (element instanceof Element) {
for (RawType rawValue : values){ if (itemDefinition == null && containerDef != null){ itemDefinition = (ID) ((PrismContextImpl) containerDef.getPrismContext()).getPrismUnmarshaller().locateItemDefinition(containerDef, elementQName, rawValue.getXnode()); prismContext = containerDef.getPrismContext();