[TASK] Change APC cache preset condition
[Packages/TYPO3.CMS.git] / typo3 / sysext / install / Classes / Configuration / ExtbaseObjectCache / ApcPreset.php
index 079f6c5..f138508 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 namespace TYPO3\CMS\Install\Configuration\ExtbaseObjectCache;
 
-/**
+/*
  * This file is part of the TYPO3 CMS project.
  *
  * It is free software; you can redistribute it and/or modify it under
@@ -19,51 +19,49 @@ use TYPO3\CMS\Install\Configuration;
 /**
  * APC preset
  */
-class ApcPreset extends Configuration\AbstractPreset {
-
-       /**
-        * @var string Name of preset
-        */
-       protected $name = 'Apc';
+class ApcPreset extends Configuration\AbstractPreset
+{
+    /**
+     * @var string Name of preset
+     */
+    protected $name = 'Apc';
 
-       /**
-        * @var int Priority of preset
-        */
-       protected $priority = 80;
+    /**
+     * @var int Priority of preset
+     */
+    protected $priority = 80;
 
-       /**
-        * @var array Configuration values handled by this preset
-        */
-       protected $configurationValues = array(
-               'SYS/caching/cacheConfigurations/extbase_object' => array(
-                       'frontend' => 'TYPO3\CMS\Core\Cache\Frontend\VariableFrontend',
-                       'backend' => 'TYPO3\CMS\Core\Cache\Backend\ApcBackend',
-                       'options' => array(
-                               'defaultLifetime' => 0,
-                       ),
-                       'groups' => array('system')
-               )
-       );
+    /**
+     * @var array Configuration values handled by this preset
+     */
+    protected $configurationValues = array(
+        'SYS/caching/cacheConfigurations/extbase_object' => array(
+            'frontend' => \TYPO3\CMS\Core\Cache\Frontend\VariableFrontend::class,
+            'backend' => \TYPO3\CMS\Core\Cache\Backend\ApcBackend::class,
+            'options' => array(
+                'defaultLifetime' => 0,
+            ),
+            'groups' => array('system')
+        )
+    );
 
-       /**
-        * APC preset is available if extension is loaded, if APC has ~100MB
-        * memory and if ~5MB are free.
-        *
-        * @return bool TRUE
-        */
-       public function isAvailable() {
-               $result = FALSE;
-               if (extension_loaded('apc')) {
-                       $memoryInfo = @apc_sma_info();
-                       $totalMemory = $memoryInfo['num_seg'] * $memoryInfo['seg_size'];
-                       $availableMemory = $memoryInfo['avail_mem'];
+    /**
+     * APC preset is available if extension is loaded and at least ~5MB are free.
+     *
+     * @return bool TRUE
+     */
+    public function isAvailable()
+    {
+        $result = false;
+        if (extension_loaded('apc')) {
+            $memoryInfo = @apc_sma_info();
+            $availableMemory = $memoryInfo['avail_mem'];
 
-                       // If more than 99MB in total and more than 5MB free
-                       if ($totalMemory > (99 * 1024 * 1024)
-                               && $availableMemory > (5 * 1024 * 1024)) {
-                               $result = TRUE;
-                       }
-               }
-               return $result;
-       }
+            // If more than 5MB free
+            if ($availableMemory > (5 * 1024 * 1024)) {
+                $result = true;
+            }
+        }
+        return $result;
+    }
 }