class ExposedFormCache

Same name in other branches
  1. 9 core/modules/views/src/ExposedFormCache.php \Drupal\views\ExposedFormCache
  2. 8.9.x core/modules/views/src/ExposedFormCache.php \Drupal\views\ExposedFormCache
  3. 10 core/modules/views/src/ExposedFormCache.php \Drupal\views\ExposedFormCache

Caches exposed forms, as they are heavy to generate.

Hierarchy

Expanded class hierarchy of ExposedFormCache

See also

\Drupal\views\Form\ViewsExposedForm

1 file declares its use of ExposedFormCache
ViewsExposedForm.php in core/modules/views/src/Form/ViewsExposedForm.php
1 string reference to 'ExposedFormCache'
views.services.yml in core/modules/views/views.services.yml
core/modules/views/views.services.yml
1 service uses ExposedFormCache
views.exposed_form_cache in core/modules/views/views.services.yml
Drupal\views\ExposedFormCache

File

core/modules/views/src/ExposedFormCache.php, line 10

Namespace

Drupal\views
View source
class ExposedFormCache {
    
    /**
     * Stores the exposed form data.
     *
     * @var array
     */
    protected $cache = [];
    
    /**
     * Save the Views exposed form for later use.
     *
     * @param string $view_id
     *   The views ID.
     * @param string $display_id
     *   The current view display name.
     * @param array $form_output
     *   The form structure. Only needed when inserting the value.
     */
    public function setForm($view_id, $display_id, array $form_output) {
        // Save the form output.
        $views_exposed[$view_id][$display_id] = $form_output;
    }
    
    /**
     * Retrieves the views exposed form from cache.
     *
     * @param string $view_id
     *   The views ID.
     * @param string $display_id
     *   The current view display name.
     *
     * @return array|bool
     *   The form structure, if any, otherwise FALSE.
     */
    public function getForm($view_id, $display_id) {
        // Return the form output, if any.
        if (empty($this->cache[$view_id][$display_id])) {
            return FALSE;
        }
        else {
            return $this->cache[$view_id][$display_id];
        }
    }
    
    /**
     * Rests the form cache.
     */
    public function reset() {
        $this->cache = [];
    }

}

Members

Title Sort descending Modifiers Object type Summary
ExposedFormCache::$cache protected property Stores the exposed form data.
ExposedFormCache::getForm public function Retrieves the views exposed form from cache.
ExposedFormCache::reset public function Rests the form cache.
ExposedFormCache::setForm public function Save the Views exposed form for later use.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.