Merge pull request #192 from kibao/fix-custom-finder
Fix register custom finder for entity
This commit is contained in:
commit
3cfa2c1ef6
|
@ -363,15 +363,16 @@ class FOQElasticaExtension extends Extension
|
|||
protected function loadTypeFinder(array $typeConfig, ContainerBuilder $container, $elasticaToModelId, $typeDef, $indexName, $typeName)
|
||||
{
|
||||
if (isset($typeConfig['finder']['service'])) {
|
||||
return $typeConfig['finder']['service'];
|
||||
$finderId = $typeConfig['finder']['service'];
|
||||
} else {
|
||||
$abstractFinderId = 'foq_elastica.finder.prototype';
|
||||
$finderId = sprintf('foq_elastica.finder.%s.%s', $indexName, $typeName);
|
||||
$finderDef = new DefinitionDecorator($abstractFinderId);
|
||||
$finderDef->replaceArgument(0, $typeDef);
|
||||
$finderDef->replaceArgument(1, new Reference($elasticaToModelId));
|
||||
$container->setDefinition($finderId, $finderDef);
|
||||
}
|
||||
$abstractFinderId = 'foq_elastica.finder.prototype';
|
||||
$finderId = sprintf('foq_elastica.finder.%s.%s', $indexName, $typeName);
|
||||
$finderDef = new DefinitionDecorator($abstractFinderId);
|
||||
$finderDef->replaceArgument(0, $typeDef);
|
||||
$finderDef->replaceArgument(1, new Reference($elasticaToModelId));
|
||||
$container->setDefinition($finderId, $finderDef);
|
||||
|
||||
|
||||
$managerId = sprintf('foq_elastica.manager.%s', $typeConfig['driver']);
|
||||
$managerDef = $container->getDefinition($managerId);
|
||||
$arguments = array( $typeConfig['model'], new Reference($finderId));
|
||||
|
|
Loading…
Reference in a new issue