public function computeChangeSet(ClassMetadata $class, $document)
{
if (!$class->isInheritanceTypeNone()) {
$class = $this->dm->getClassMetadata(get_class($document));
}
// Fire PreFlush lifecycle callbacks
if (!empty($class->lifecycleCallbacks[Events::preFlush])) {
$class->invokeLifecycleCallbacks(Events::preFlush, $document, array(new Event\PreFlushEventArgs($this->dm)));
}
$this->computeOrRecomputeChangeSet($class, $document);
}