/** * Create an instance of {@link ObjectModificationType } * */ public ObjectModificationType createObjectModificationType() { return new ObjectModificationType(); }
/** * Create an instance of {@link ObjectModificationType } * */ public ObjectModificationType createObjectModificationType() { return new ObjectModificationType(); }
/** * Create an instance of {@link ObjectModificationType } * */ public ObjectModificationType createObjectModificationType() { return new ObjectModificationType(); }
/** * Converts this delta to ObjectModificationType (XML). */ public static <T extends Objectable> ObjectModificationType toObjectModificationType(ObjectDelta<T> delta) throws SchemaException { if (delta.getChangeType() != ChangeType.MODIFY) { throw new IllegalStateException("Cannot produce ObjectModificationType from delta of type " + delta.getChangeType()); } ObjectModificationType modType = new ObjectModificationType(); modType.setOid(delta.getOid()); List<ItemDeltaType> propModTypes = modType.getItemDelta(); for (ItemDelta<?,?> propDelta : delta.getModifications()) { Collection<ItemDeltaType> propPropModTypes; try { propPropModTypes = toItemDeltaTypes(propDelta); } catch (SchemaException e) { throw new SchemaException(e.getMessage() + " in " + delta.toString(), e); } propModTypes.addAll(propPropModTypes); } return modType; }
@Test public void testAccountRefDelta() throws Exception { System.out.println("===[ testAccountRefDelta ]===="); // GIVEN ObjectModificationType objectChange = new ObjectModificationType(); objectChange.setOid("12345"); ItemDeltaType modificationDeleteAccountRef = new ItemDeltaType(); modificationDeleteAccountRef.setModificationType(ModificationTypeType.DELETE); ObjectReferenceType accountRefToDelete = new ObjectReferenceType(); accountRefToDelete.setOid("54321"); PrismContext prismContext = getPrismContext(); RawType modificationValue = new RawType(prismContext.xnodeSerializer().root(new QName("dummy")).serializeRealValue(accountRefToDelete).getSubnode(), prismContext); modificationDeleteAccountRef.getValue().add(modificationValue); objectChange.getItemDelta().add(modificationDeleteAccountRef); ItemPathType itemPathType = new ItemPathType(UserType.F_LINK_REF); modificationDeleteAccountRef.setPath(itemPathType); PrismObjectDefinition<UserType> objDef = PrismTestUtil.getObjectDefinition(UserType.class); // WHEN Collection<? extends ItemDelta> modifications = DeltaConvertor.toModifications(objectChange, objDef); // THEN assertNotNull("Null modifications", modifications); assertFalse("Empty modifications", modifications.isEmpty()); // TODO: more asserts }
ObjectModificationType modType = new ObjectModificationType(); modType.setOid(objectDelta.getOid()); for (ItemDelta<?,?> propDelta : objectDelta.getModifications()) {