for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Palmtree\CanonicalUrlBundle\DependencyInjection;
use Symfony\Component\Config\Definition\Builder\TreeBuilder;
use Symfony\Component\Config\Definition\ConfigurationInterface;
class Configuration implements ConfigurationInterface
{
/**
* @inheritDoc
*/
public function getConfigTreeBuilder()
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('palmtree_canonical_url');
// @formatter:off
$rootNode
->children()
->scalarNode('site_url')
->isRequired()->cannotBeEmpty()
->validate()
->ifTrue(function ($value) {
return !\is_string($value);
})
->thenInvalid('site_url must be a string')
->end()
->booleanNode('redirect')->defaultTrue()->treatNullLike(true)->end()
->integerNode('redirect_code')->defaultValue(301)->treatNullLike(301)->min(300)->max(399)->end()
->booleanNode('trailing_slash')->defaultFalse()->treatNullLike(false)->end()
;
// @formatter:on
return $treeBuilder;
}