function propertyChanged($entity, $propertyName, $oldValue, $newValue)
{
$oid = spl_object_hash($entity);
$class = $this->xem->getClassMetadata(get_class($entity));
if (!isset($class->fieldMappings[$propertyName])) {
return;
// ignore non-persistent fields
}
// Update changeset and mark entity for synchronization
$this->entityChangeSets[$oid][$propertyName] = array($oldValue, $newValue);
if (!isset($this->scheduledForDirtyCheck[$class->rootXmlEntityName][$oid])) {
$this->scheduleForDirtyCheck($entity);
}
}