/**
* @param UnitOfWork $uow
*/
public function __construct(UnitOfWork $uow)
{
$manager = $uow->getManager();
$this->proxyFactory = $manager->getProxyFactory();
$this->metadataFactory = $manager->getMetadataFactory();
$this->inflector = $manager->getInflector();
$this->binding = $manager->getBinding();
$this->uow = $uow;
$this->clusterMap = new ClusterMap($this->binding, $manager->getCache());
$this->caster = new Caster($this, $this->inflector);
$this->enableMismatchesTolerance($manager->getConfiguration()->getMismatchesTolerance());
}