/** * @param Doctrine\Common\Persistence\ManagerRegistry $registry * @param string $class FQCN obiektu domenowego. * @param boolean $autoflush Flush after every add or remove action. * @throws \InvalidArgumentException Rzucany, gdy nie znaleziono menedżera dla klasy. */ public function __construct($registry, $class, $autoflush = false) { /** * Fix dla BC BREAK w DoctrineBridge pomiędzy wersjami 2.0 a 2.1. * W 2.1 wprowadzono standardowy interface z Doctrine Common. */ if ($registry instanceof ManagerRegistry) { $this->manager = $registry->getManagerForClass($class); } else { $this->manager = $registry->getEntityManagerForClass($class); } if (null === $this->manager) { throw new \InvalidArgumentException(sprintf("Manager supporting class %s not found.", $class)); } $this->repository = $this->manager->getRepository($class); $this->autoflush = $autoflush; }