‪TYPO3CMS  9.5
CachingFrameworkGarbageCollectionTask.php
Go to the documentation of this file.
1 <?php
3 
4 /*
5  * This file is part of the TYPO3 CMS project.
6  *
7  * It is free software; you can redistribute it and/or modify it under
8  * the terms of the GNU General Public License, either version 2
9  * of the License, or any later version.
10  *
11  * For the full copyright and license information, please read the
12  * LICENSE.txt file that was distributed with this source code.
13  *
14  * The TYPO3 project - inspiring people to share!
15  */
16 
26 {
33  public ‪$selectedBackends = [];
34 
40  public function ‪execute()
41  {
42  // Global sub-array with all configured caches
43  $cacheConfigurations = ‪$GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations'];
44  if (is_array($cacheConfigurations)) {
45  // Iterate through configured caches and call garbage collection if
46  // backend is within selected backends in additional field of task
47  foreach ($cacheConfigurations as $cacheName => $cacheConfiguration) {
48  // The cache backend used for this cache
49  $usedCacheBackend = $cacheConfiguration['backend'];
50  if (in_array($usedCacheBackend, $this->selectedBackends)) {
51  \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\‪TYPO3\CMS\Core\Cache\CacheManager::class)->getCache($cacheName)->collectGarbage();
52  }
53  }
54  }
55  return true;
56  }
57 }
‪TYPO3
‪TYPO3\CMS\Scheduler\Task
Definition: AbstractTask.php:2
‪TYPO3\CMS\Scheduler\Task\CachingFrameworkGarbageCollectionTask
Definition: CachingFrameworkGarbageCollectionTask.php:26
‪TYPO3\CMS\Scheduler\Task\AbstractTask
Definition: AbstractTask.php:32
‪TYPO3\CMS\Scheduler\Task\CachingFrameworkGarbageCollectionTask\execute
‪bool execute()
Definition: CachingFrameworkGarbageCollectionTask.php:39
‪$GLOBALS
‪$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['adminpanel']['modules']
Definition: ext_localconf.php:5
‪TYPO3\CMS\Scheduler\Task\CachingFrameworkGarbageCollectionTask\$selectedBackends
‪array $selectedBackends
Definition: CachingFrameworkGarbageCollectionTask.php:32