ArcOperation arcDiff = (ArcOperation) diff;
Object targetId = arcDiff.getTargetNodeId();
String arcId = arcDiff.getArcId().toString();
Property property = getClassDescriptor().getProperty(arcId);
// note that some collection properties implement 'SingleObjectArcProperty',
// so we cant't do 'instanceof SingleObjectArcProperty'
// TODO: andrus, 3.22.2006 - should we consider this a bug?
if (property instanceof CollectionProperty) {
// record flattened op changes
ObjEntity entity = objectStore.context.getEntityResolver().getObjEntity(
entityName);
ObjRelationship relationship = (ObjRelationship) entity
.getRelationship(property.getName());
if (relationship.isFlattened()) {
if (flatIds == null) {
flatIds = new HashMap();
}