public getRepository ( string $entityName ) : Doctrine\Common\Persistence\ObjectRepository | ||
$entityName | string | |
리턴 | Doctrine\Common\Persistence\ObjectRepository |
public function getRepository($entityName)
{
$entityName = ltrim($entityName, '\\');
if (isset($this->repositories[$entityName])) {
return $this->repositories[$entityName];
}
$metadata = $this->getClassMetadata($entityName);
$customRepositoryClassName = $metadata->customRepositoryClassName;
if ($customRepositoryClassName !== null) {
$repository = new $customRepositoryClassName($this, $metadata);
} else {
$repository = new XmlEntityRepository($this, $metadata);
}
$this->repositories[$entityName] = $repository;
return $repository;
}
public function testPersistUpdateAndLoad() { $order = new Order(1, 'business cards', new \DateTime()); $this->xem->persist($order); $order->setProductType('postcards'); $this->xem->persist($order); $this->xem->flush(); $expectedFileName = __DIR__ . '/../Workspace/Doctrine/Tests/OXM/Entities/Order/1.xml'; $this->assertTrue(is_file($expectedFileName)); $otherOrder = $this->xem->getRepository('Doctrine\\Tests\\OXM\\Entities\\Order')->find(1); $this->assertEquals('postcards', $otherOrder->getProductType()); unlink(__DIR__ . '/../Workspace/Doctrine/Tests/OXM/Entities/Order/1.xml'); }