If you want to use the Doctrine cache component, skip this section.
If you want to use your own version of cache plugin, use following pattern.
<?php namespace YourNamespace; use Bartlett\Reflect\Plugin\CachePlugin as BaseCachePlugin; class CachePlugin extends BaseCachePlugin { // all additional code you need }
And the configuration in JSON file :
{ "source-providers": [ ], "plugins": [ { "name": "Cache", "class": "YourNamespace\\CachePlugin", "options": [] } ], "analysers" : [ ], "services": [ ] }
Use one of the most famous caching solution, provided by the Doctrine project.
Use this shortcut version that is strictly equivalent to next in section file cache.
{ "source-providers": [ ], "plugins": [ { "name": "Cache", "class": "Bartlett\\Reflect\\Plugin\\CachePlugin", "options": [] } ], "analysers" : [ ], "services": [ ] }
Doctrine File backend to store your Reflect results in the local file system.
{ "source-providers": [ ], "plugins": [ { "name": "Cache", "class": "Bartlett\\Reflect\\Plugin\\CachePlugin", "options": { "adapter": "DoctrineCacheAdapter", "backend": { "class": "Doctrine\\Common\\Cache\\FilesystemCache", "args": [ "%{TEMP}/bartlett/cache" ] } } } ], "analysers" : [ ], "services": [ ] }
In the source code above, we use the standard Doctrine File cache provider, and store results in the default system temporary directory ( see php sys_get_temp_dir() function ).