Skip to content

Commit 11b3341

Browse files
author
alex-pex
committed
Bundle configuration
1 parent c4059dd commit 11b3341

3 files changed

Lines changed: 22 additions & 8 deletions

File tree

DependencyInjection/Configuration.php

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,16 @@ public function getConfigTreeBuilder()
2020
$treeBuilder = new TreeBuilder();
2121
$rootNode = $treeBuilder->root('stadline_execution_cache');
2222

23-
// Here you should define the parameters that are allowed to
24-
// configure your bundle. See the documentation linked above for
25-
// more information on that topic.
23+
$rootNode
24+
->children()
25+
->arrayNode('storage')->canBeDisabled()
26+
->children()
27+
->scalarNode('prefix')->defaultValue('exc_')->end()
28+
->scalarNode('default_ttl')->defaultValue(300)->end()
29+
->scalarNode('pool_adapter')->defaultValue('cache')->end()
30+
->end()
31+
->end()
32+
->end();
2633

2734
return $treeBuilder;
2835
}

DependencyInjection/StadlineExecutionCacheExtension.php

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
use Symfony\Component\Config\FileLocator;
77
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
88
use Symfony\Component\DependencyInjection\Loader;
9+
use Symfony\Component\DependencyInjection\Reference;
910

1011
/**
1112
* This is the class that loads and manages your bundle configuration
@@ -24,5 +25,16 @@ public function load(array $configs, ContainerBuilder $container)
2425

2526
$loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
2627
$loader->load('services.yml');
28+
29+
if (!$config['storage']['enabled']) {
30+
$container->removeDefinition('execution_cache.kernel_listener');
31+
} else {
32+
$storageDefinition = $container->getDefinition('execution_cache.default_storage');
33+
$storageDefinition->setArguments(array(
34+
new Reference($config['storage']['pool_adapter']),
35+
$config['storage']['prefix'],
36+
$config['storage']['default_ttl'],
37+
));
38+
}
2739
}
2840
}

Resources/config/services.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
parameters:
2-
execution_cache.storage_prefix: exc_
3-
execution_cache.storage_default_ttl: 300
4-
51
services:
62
execution_cache.kernel_listener:
73
class: Stadline\ExecutionCacheBundle\Listener\KernelListener
@@ -12,7 +8,6 @@ services:
128

139
execution_cache.default_storage:
1410
class: Stadline\ExecutionCacheBundle\Cache\Storage
15-
arguments: [ @cache, %execution_cache.storage_prefix%, %execution_cache.storage_default_ttl% ]
1611
calls:
1712
- [ setKeyProvider, [ @execution_cache.default_key_provider ]]
1813

0 commit comments

Comments
 (0)