/** * {@inheritdoc} */ public function process(ContextInterface $context) { /** @var ConfigContext $context */ /** @var array|null $definition */ $definition = $context->getResult(); if (empty($definition) || !is_array($definition[ConfigUtil::FIELDS])) { // nothing to do return; } $fieldsDefinition = $definition[ConfigUtil::FIELDS]; $entityClass = $context->getClassName(); if (!$this->doctrineHelper->isManageableEntityClass($entityClass)) { return; } $filterFieldsConfig = $context->get(FilterFieldsConfigExtra::NAME); $this->filterFields($entityClass, $fieldsDefinition, $filterFieldsConfig); $this->filterAssociations($entityClass, $fieldsDefinition, $filterFieldsConfig); $context->setResult([ConfigUtil::EXCLUSION_POLICY => ConfigUtil::EXCLUSION_POLICY_ALL, ConfigUtil::FIELDS => $fieldsDefinition]); }
public function testIsManageableEntityClassForNotManageableEntity() { $class = 'Oro\\Bundle\\EntityBundle\\Tests\\Unit\\ORM\\Stub\\ItemStub'; $this->registry->expects($this->once())->method('getManagerForClass')->with($class)->will($this->returnValue(null)); $this->assertFalse($this->doctrineHelper->isManageableEntityClass($class)); }