public void setOid(String oid) { for (ObjectDelta<O> delta: waves) { if (delta == null) { continue; } delta.setOid(oid); } }
@Override public <O extends Objectable> ObjectDelta<O> createEmptyDelta(Class<O> type, String oid, ChangeType changeType) { ObjectDelta<O> objectDelta = create(type, changeType); objectDelta.setOid(oid); return objectDelta; }
@Override public void setOid(String oid) { super.setOid(oid); if (secondaryDelta != null) { secondaryDelta.setOid(oid); } }
@Override public <O extends Objectable> ObjectDelta<O> createDeleteDelta(Class<O> type, String oid) { ObjectDelta<O> objectDelta = create(type, ChangeType.DELETE); objectDelta.setOid(oid); return objectDelta; }
@Override public <O extends Objectable, C extends Containerable> ObjectDelta<O> createModificationAddContainer(Class<O> type, String oid, ItemPath propertyPath, PrismContainerValue<C>... containerValues) { ObjectDelta<O> objectDelta = create(type, ChangeType.MODIFY); objectDelta.setOid(oid); fillInModificationAddContainer(objectDelta, propertyPath, containerValues); return objectDelta; }
@Override public <O extends Objectable, C extends Containerable> ObjectDelta<O> createModificationReplaceContainer(Class<O> type, String oid, ItemPath propertyPath, C... containerValues) throws SchemaException { ObjectDelta<O> objectDelta = create(type, ChangeType.MODIFY); objectDelta.setOid(oid); fillInModificationReplaceContainer(objectDelta, propertyPath, containerValues); return objectDelta; }
public ObjectDelta<O> createModifyDelta() { ObjectDelta<O> delta = createDelta(ChangeType.MODIFY); delta.setOid(this.getOid()); return delta; }
@Override public <O extends Objectable, C extends Containerable> ObjectDelta<O> createModificationDeleteContainer(Class<O> type, String oid, ItemPath containerPath, PrismContainerValue<C>... containerValues) { ObjectDelta<O> objectDelta = create(type, ChangeType.MODIFY); objectDelta.setOid(oid); fillInModificationDeleteContainer(objectDelta, containerPath, containerValues); return objectDelta; }
/** * Convenience method for quick creation of object deltas that replace a single object reference. */ @Override public <O extends Objectable> ObjectDelta<O> createModificationReplaceReference(Class<O> type, String oid, ItemPath refPath, PrismReferenceValue... refValues) { ObjectDelta<O> objectDelta = create(type, ChangeType.MODIFY); objectDelta.setOid(oid); fillInModificationReplaceReference(objectDelta, refPath, refValues); return objectDelta; }
@Override public <T extends Objectable> ObjectDelta<T> createModifyDelta(String oid, Collection<? extends ItemDelta> modifications, Class<T> objectTypeClass) { ObjectDelta<T> objectDelta = create(objectTypeClass, ChangeType.MODIFY); objectDelta.addModifications(modifications); objectDelta.setOid(oid); return objectDelta; }
@Override public <O extends Objectable, C extends Containerable> ObjectDelta<O> createModificationReplaceContainer(Class<O> type, String oid, ItemPath containerPath, PrismContainerValue<C>... containerValues) { ObjectDelta<O> objectDelta = create(type, ChangeType.MODIFY); objectDelta.setOid(oid); fillInModificationReplaceContainer(objectDelta, containerPath, containerValues); return objectDelta; }
/** * Sets oid to the field but also to the deltas (if applicable). */ public void setOid(String oid) { this.oid = oid; if (primaryDelta != null && !primaryDelta.isImmutable()) { primaryDelta.setOid(oid); } if (objectNew != null) { objectNew.setOid(oid); } }
public ObjectDelta<O> createDeleteDelta() { ObjectDelta<O> delta = createDelta(ChangeType.DELETE); delta.setOid(this.getOid()); return delta; }
public ObjectDelta<O> createDelta(ChangeType changeType) { ObjectDelta<O> delta = new ObjectDeltaImpl<>(getCompileTimeClass(), changeType, getPrismContext()); delta.setOid(getOid()); return delta; }
protected ObjectDelta<UserType> parseDelta(String oid, File file) throws SchemaException, IOException { ObjectModificationType modification = PrismTestUtil.parseAtomicValue(file, ObjectModificationType.COMPLEX_TYPE); ObjectDelta<UserType> delta = DeltaConvertor.createObjectDelta(modification, UserType.class, prismContext); delta.setOid(oid); return delta; }
public void swallowToPrimaryDelta(ItemDelta<?,?> itemDelta) throws SchemaException { if (primaryDelta == null) { primaryDelta = getPrismContext().deltaFactory().object().create(getObjectTypeClass(), ChangeType.MODIFY); primaryDelta.setOid(oid); } primaryDelta.swallow(itemDelta); }
static <O extends Objectable> ObjectDelta<O> createAddDelta(PrismObject<O> objectToAdd) { ObjectDelta<O> objectDelta = objectToAdd.getPrismContext().deltaFactory().object().create(objectToAdd.getCompileTimeClass(), ChangeType.ADD); objectDelta.setOid(objectToAdd.getOid()); objectDelta.setObjectToAdd(objectToAdd); return objectDelta; }
public ObjectDelta<O> swallowToDelta(ObjectDelta<O> originalDelta, ItemDelta<?,?> propDelta) throws SchemaException { if (originalDelta == null) { originalDelta = getPrismContext().deltaFactory().object().create(getObjectTypeClass(), ChangeType.MODIFY); originalDelta.setOid(getOid()); } else if (originalDelta.containsModification(propDelta, EquivalenceStrategy.LITERAL_IGNORE_METADATA)) { // todo why literal? return originalDelta; } originalDelta.swallow(propDelta); return originalDelta; }
@Override public void swallowToSecondaryDelta(ItemDelta<?,?> itemDelta) throws SchemaException { if (secondaryDelta == null) { secondaryDelta = getPrismContext().deltaFactory().object().create(getObjectTypeClass(), ChangeType.MODIFY); secondaryDelta.setOid(getOid()); } LensUtil.setDeltaOldValue(this, itemDelta); secondaryDelta.swallow(itemDelta); }
public void swallowToSecondaryDelta(ItemDelta<?,?> propDelta) throws SchemaException { ObjectDelta<O> secondaryDelta = getSecondaryDelta(0); if (secondaryDelta == null) { secondaryDelta = getPrismContext().deltaFactory().object().create(getObjectTypeClass(), ChangeType.MODIFY); secondaryDelta.setOid(getOid()); setSecondaryDelta(secondaryDelta, 0); } else if (secondaryDelta.containsModification(propDelta, EquivalenceStrategy.LITERAL_IGNORE_METADATA)) { // todo why literal? return; } secondaryDelta.swallow(propDelta); }