public function clearCacheAction()
{
/** @var Cacher $cacher */
$cacher = $this->get('jarves.cache.cacher');
/** @var \AppKernel $kernel */
$kernel = $this->get('kernel');
/** @var Filesystem $localFilesystem */
$localFilesystem = $this->get('jarves.filesystem.local');
$localFilesystem->remove($kernel->getCacheDir());
$localFilesystem->mkdir($kernel->getCacheDir());
$localFilesystem->remove('web/cache');
$localFilesystem->mkdir('web/cache');
/** @var StorageFactory $storageFactory */
$storageFactory = $this->get('jarves.storage_factory');
foreach ($this->jarves->getConfigs()->getConfigs() as $bundleConfig) {
$cacher->invalidateCache($bundleConfig->getName());
if ($bundleConfig->getObjects()) {
foreach ($bundleConfig->getObjects() as $object) {
/** @var AbstractStorage $storage */
$storage = $storageFactory->createStorage($object);
$storage->clearCache();
}
}
}
return true;
}