本文整理汇总了PHP中Doctrine\ODM\PHPCR\DocumentManager::getConfiguration方法的典型用法代码示例。如果您正苦于以下问题:PHP DocumentManager::getConfiguration方法的具体用法?PHP DocumentManager::getConfiguration怎么用?PHP DocumentManager::getConfiguration使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Doctrine\ODM\PHPCR\DocumentManager
的用法示例。
在下文中一共展示了DocumentManager::getConfiguration方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testFindWithNamespace
public function testFindWithNamespace()
{
$config = $this->dm->getConfiguration();
$config->addDocumentNamespace('Foobar', 'Doctrine\\Tests\\ODM\\PHPCR\\Functional');
$user = $this->dm->find('Foobar:TypeUser', 'functional/user');
$this->assertNotNull($user);
}
示例2: testGetAllMetadata
public function testGetAllMetadata()
{
$driver = new \Doctrine\Common\Persistence\Mapping\Driver\PHPDriver(array(__DIR__ . '/Model/php'));
$this->dm->getConfiguration()->setMetadataDriverImpl($driver);
$cmf = new ClassMetadataFactory($this->dm);
$cm = new \Doctrine\ODM\PHPCR\Mapping\ClassMetadata('stdClass');
$cmf->setMetadataFor('stdClass', $cm);
$metadata = $cmf->getAllMetadata();
$this->assertTrue(is_array($metadata));
}
示例3: createRepository
/**
* Create a new repository instance for a document class.
*
* @param DocumentManager $documentManager The DocumentManager instance.
* @param string $documentName The name of the document.
*
* @return \Doctrine\Common\Persistence\ObjectRepository
*/
protected function createRepository(DocumentManager $documentManager, $documentName)
{
$metadata = $documentManager->getClassMetadata($documentName);
$repositoryClassName = $metadata->customRepositoryClassName;
if ($repositoryClassName === null) {
$configuration = $documentManager->getConfiguration();
$repositoryClassName = $configuration->getDefaultRepositoryClassName();
}
return new $repositoryClassName($documentManager, $metadata);
}
示例4: testFromWithAlias
public function testFromWithAlias()
{
$config = $this->dm->getConfiguration();
$config->addDocumentNamespace('Foobar', 'Doctrine\\Tests\\Models\\Blog');
$qb = $this->createQb();
$qb->from()->document('Foobar:User', 'a');
// add where to stop rouge documents that havn't been stored in /functional/ from appearing.
$qb->where()->eq()->field('a.status')->literal('query_builder')->end();
$res = $qb->getQuery()->execute();
$this->assertCount(2, $res);
}
示例5: testFindByUuid
public function testFindByUuid()
{
$generator = $this->dm->getConfiguration()->getUuidGenerator();
$user = $this->dm->find(null, $generator());
$this->assertNull($user);
$newUser = new UserWithUuid();
$newUser->username = 'test';
$newUser->id = '/functional/test';
$this->dm->persist($newUser);
$this->dm->flush();
$this->dm->clear();
$foundUser = $this->dm->find(null, $newUser->uuid);
$this->assertNotNull($foundUser);
$this->assertEquals('test', $foundUser->username);
$this->assertEquals('/functional/test', $foundUser->id);
}
示例6: prefetch
/**
* @param NodeInterface[] $nodes
*/
public function prefetch(DocumentManager $dm, $nodes, $locale = null)
{
if (!count($nodes)) {
return;
}
$uuids = array();
$paths = array();
$documentClassMapper = $dm->getConfiguration()->getDocumentClassMapper();
foreach ($nodes as $node) {
$className = $documentClassMapper->getClassName($dm, $node);
$class = $dm->getClassMetadata($className);
if (!$locale && $class->translator) {
$locale = $dm->getLocaleChooserStrategy()->getLocale();
}
$uuids = array_merge($uuids, $this->collectPrefetchReferences($class, $node));
$paths = array_merge($paths, $this->collectPrefetchHierarchy($class, $node, $locale));
}
if (count($uuids)) {
$node->getSession()->getNodesByIdentifier($uuids);
}
if (count($paths)) {
$node->getSession()->getNodes($paths);
}
}
示例7: __construct
/**
* @param DocumentManager $dm
*/
public function __construct(DocumentManager $dm)
{
$this->dm = $dm;
$this->session = $dm->getPhpcrSession();
$this->eventListenersInvoker = new ListenersInvoker($dm);
$this->eventManager = $dm->getEventManager();
$config = $dm->getConfiguration();
$this->documentClassMapper = $config->getDocumentClassMapper();
$this->validateDocumentName = $config->getValidateDoctrineMetadata();
$this->writeMetadata = $config->getWriteDoctrineMetadata();
$this->uuidGenerator = $config->getUuidGenerator();
if ($this->session instanceof JackalopeSession) {
$this->useFetchDepth = 'jackalope.fetch_depth';
}
}
示例8: getFqcnFromAlias
/**
* {@inheritdoc}
*/
protected function getFqcnFromAlias($namespaceAlias, $simpleClassName)
{
return $this->dm->getConfiguration()->getDocumentNamespace($namespaceAlias) . '\\' . $simpleClassName;
}
示例9: __construct
/**
* @param DocumentManager $dm
*/
public function __construct(DocumentManager $dm)
{
$this->dm = $dm;
$this->session = $dm->getPhpcrSession();
$this->evm = $dm->getEventManager();
$config = $dm->getConfiguration();
$this->documentClassMapper = $config->getDocumentClassMapper();
$this->validateDocumentName = $config->getValidateDoctrineMetadata();
$this->writeMetadata = $config->getWriteDoctrineMetadata();
}