return new TransientNodeData(node.getQPath(), node.getIdentifier(), node.getPersistedVersion(), node
.getPrimaryTypeName(), node.getMixinTypeNames(), node.getOrderNumber(), node.getParentIdentifier(), acl);
}
// else - property
final PropertyData prop = (PropertyData)item;
// make a copy, value may be null for deleting items
List<ValueData> values = null;
if (prop.getValues() != null)
{
values = new ArrayList<ValueData>();
for (ValueData val : prop.getValues())
{
values.add(((AbstractPersistedValueData)val).createTransientCopy());
}
}
TransientPropertyData newData =
new TransientPropertyData(prop.getQPath(), prop.getIdentifier(), prop.getPersistedVersion(), prop.getType(),
prop.getParentIdentifier(), prop.isMultiValued(), values);
return newData;
}