Merge pull request #420 from FriendsOfSymfony/all-field-config

Add support to disable the _all field for a type
This commit is contained in:
Tim Nagel 2013-12-10 02:16:23 -08:00
commit e1ed7bdc67
2 changed files with 21 additions and 0 deletions

View file

@ -291,6 +291,7 @@ class Configuration implements ConfigurationInterface
->append($this->getBoostNode())
->append($this->getRoutingNode())
->append($this->getParentNode())
->append($this->getAllNode())
->end()
;
@ -577,4 +578,21 @@ class Configuration implements ConfigurationInterface
return $node;
}
/**
* Returns the array node used for "_all"
*/
protected function getAllNode()
{
$builder = new TreeBuilder();
$node = $builder->root('_all');
$node
->children()
->scalarNode('enabled')->defaultValue(true)->end()
->end()
;
return $node;
}
}

View file

@ -240,6 +240,9 @@ class FOSElasticaExtension extends Extension
if (isset($type['index'])) {
$this->indexConfigs[$indexName]['config']['mappings'][$name]['index'] = $type['index'];
}
if (isset($type['_all'])) {
$this->indexConfigs[$indexName]['config']['mappings'][$name]['_all'] = $type['_all'];
}
if (!empty($type['dynamic_templates'])) {
$this->indexConfigs[$indexName]['config']['mappings'][$name]['dynamic_templates'] = array();
foreach ($type['dynamic_templates'] as $templateName => $templateData) {