Skip to content

Commit 637f7a1

Browse files
committed
Merge pull request #16 from dg/extension
CacheExtension: used aliases
2 parents d4eed21 + 83c752e commit 637f7a1

File tree

4 files changed

+45
-13
lines changed

4 files changed

+45
-13
lines changed

composer.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
},
2121
"require-dev": {
2222
"nette/tester": "~1.0",
23+
"nette/di": "~2.3",
2324
"latte/latte": "~2.2.2"
2425
},
2526
"conflict": {

src/Bridges/CacheDI/CacheExtension.php

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -31,26 +31,18 @@ public function loadConfiguration()
3131
{
3232
$container = $this->getContainerBuilder();
3333

34-
$container->addDefinition('nette.cacheJournal')
34+
$container->addDefinition($this->prefix('journal'))
3535
->setClass('Nette\Caching\Storages\IJournal')
3636
->setFactory('Nette\Caching\Storages\FileJournal', array($this->tempDir));
3737

38-
$container->addDefinition('cacheStorage') // no namespace for back compatibility
38+
$container->addDefinition($this->prefix('storage'))
3939
->setClass('Nette\Caching\IStorage')
4040
->setFactory('Nette\Caching\Storages\FileStorage', array($this->tempDir . '/cache'));
4141

42-
if (class_exists('Nette\Caching\Storages\PhpFileStorage')) {
43-
$container->addDefinition('nette.templateCacheStorage')
44-
->setClass('Nette\Caching\Storages\PhpFileStorage', array($this->tempDir . '/cache'))
45-
->addSetup('::trigger_error', array('Service templateCacheStorage is deprecated.', E_USER_DEPRECATED))
46-
->setAutowired(FALSE);
42+
if ($this->name === 'cache') {
43+
$container->addAlias('nette.cacheJournal', $this->prefix('journal'));
44+
$container->addAlias('cacheStorage', $this->prefix('storage'));
4745
}
48-
49-
$container->addDefinition('nette.cache')
50-
->setClass('Nette\Caching\Cache', array(1 => $container::literal('$namespace')))
51-
->addSetup('::trigger_error', array('Service cache is deprecated.', E_USER_DEPRECATED))
52-
->setParameters(array('namespace' => NULL))
53-
->setAutowired(FALSE);
5446
}
5547

5648

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
<?php
2+
3+
/**
4+
* Test: CacheExtension.
5+
*/
6+
7+
use Nette\DI,
8+
Nette\Bridges\CacheDI\CacheExtension,
9+
Tester\Assert;
10+
11+
12+
require __DIR__ . '/../bootstrap.php';
13+
14+
15+
test(function() {
16+
$compiler = new DI\Compiler;
17+
$compiler->addExtension('cache', new CacheExtension(TEMP_DIR));
18+
19+
eval($compiler->compile(array(), 'Container1'));
20+
21+
$container = new Container1;
22+
$container->initialize();
23+
24+
$journal = $container->getService('cache.journal');
25+
Assert::type('Nette\Caching\Storages\FileJournal', $journal);
26+
27+
$storage = $container->getService('cache.storage');
28+
Assert::type('Nette\Caching\Storages\FileStorage', $storage);
29+
30+
// aliases
31+
Assert::same($journal, $container->getService('nette.cacheJournal'));
32+
Assert::same($storage, $container->getService('cacheStorage'));
33+
});

tests/bootstrap.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,9 @@
1818
define('TEMP_DIR', __DIR__ . '/tmp/' . getmypid());
1919
@mkdir(dirname(TEMP_DIR)); // @ - directory may already exist
2020
Tester\Helpers::purge(TEMP_DIR);
21+
22+
23+
function test(\Closure $function)
24+
{
25+
$function();
26+
}

0 commit comments

Comments
 (0)