/** * Builds the main repository, heart of eZ Publish API * * This always returns the true inner Repository, please depend on ezpublish.api.repository and not this method * directly to make sure you get an instance wrapped inside Signal / Cache / * functionality. * * @param \eZ\Publish\SPI\Persistence\Handler $persistenceHandler * * @return \eZ\Publish\API\Repository\Repository */ public function buildRepository(PersistenceHandler $persistenceHandler) { $repository = new $this->repositoryClass($persistenceHandler, array('fieldType' => $this->fieldTypeCollectionFactory->getFieldTypes(), 'role' => array('limitationTypes' => $this->roleLimitations), 'languages' => $this->container->getParameter("languages"))); /** @var \eZ\Publish\API\Repository\Repository $repository */ $anonymousUser = $repository->getUserService()->loadUser($this->container->getParameter("anonymous_user_id")); $repository->setCurrentUser($anonymousUser); return $repository; }
/** * Builds the main repository, heart of eZ Publish API. * * This always returns the true inner Repository, please depend on ezpublish.api.repository and not this method * directly to make sure you get an instance wrapped inside Signal / Cache / * functionality. * * @param \eZ\Publish\SPI\Persistence\Handler $persistenceHandler * @param \eZ\Publish\SPI\Search\Handler $searchHandler * * @return \eZ\Publish\API\Repository\Repository */ public function buildRepository(PersistenceHandler $persistenceHandler, SearchHandler $searchHandler) { $repository = new $this->repositoryClass($persistenceHandler, $searchHandler, array('fieldType' => $this->fieldTypeCollectionFactory->getFieldTypes(), 'role' => array('limitationTypes' => $this->roleLimitations), 'languages' => $this->configResolver->getParameter('languages')), new UserReference($this->configResolver->getParameter('anonymous_user_id'))); return $repository; }
/** * Builds the main repository, heart of eZ Publish API. * * This always returns the true inner Repository, please depend on ezpublish.api.repository and not this method * directly to make sure you get an instance wrapped inside Signal / Cache / * functionality. * * @param \eZ\Publish\SPI\Persistence\Handler $persistenceHandler * @param \eZ\Publish\SPI\Search\Handler $searchHandler * * @return \eZ\Publish\API\Repository\Repository */ public function buildRepository(PersistenceHandler $persistenceHandler, SearchHandler $searchHandler) { $config = $this->container->get('ezpublish.api.repository_configuration_provider')->getRepositoryConfig(); $repository = new $this->repositoryClass($persistenceHandler, $searchHandler, array('fieldType' => $this->fieldTypeCollectionFactory->getFieldTypes(), 'nameableFieldTypes' => $this->fieldTypeNameableCollectionFactory->getNameableFieldTypes(), 'role' => array('limitationTypes' => $this->roleLimitations, 'policyMap' => $this->policyMap), 'languages' => $this->configResolver->getParameter('languages'), 'content' => ['default_version_archive_limit' => $config['options']['default_version_archive_limit']]), new UserReference($this->configResolver->getParameter('anonymous_user_id'))); return $repository; }
/** * Returns storage field type registry. * * @param string $fieldTypeRegistryClass * @param \eZ\Publish\Core\Base\Container\ApiLoader\FieldTypeCollectionFactory $fieldTypeCollectionFactory * * @return \eZ\Publish\Core\Persistence\FieldTypeRegistry */ public function buildFieldTypeRegistry($fieldTypeRegistryClass, FieldTypeCollectionFactory $fieldTypeCollectionFactory) { return new $fieldTypeRegistryClass($fieldTypeCollectionFactory->getFieldTypes()); }