[ Index ]

PHP Cross Reference of Joomla 4.2.2 documentation

title

Body

[close]

/plugins/system/cache/src/Extension/ -> Cache.php (summary)

(no description)

Copyright: (C) 2022 Open Source Matters, Inc.
License: GNU General Public License version 2 or later; see LICENSE.txt
File Size: 391 lines (11 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 9 functions

  __construct()
  getSubscribedEvents()
  onAfterRoute()
  appStateSupportsCaching()
  getCacheController()
  getCacheKey()
  onAfterRender()
  isExcluded()
  onAfterRespond()

Functions
Functions that are not part of a class:

__construct(&$subject,$config,DocumentFactoryInterface $documentFactory,CacheControllerFactoryInterface $cacheControllerFactory,?Profiler $profiler,?SiteRouter $router)   X-Ref
Constructor

param: DispatcherInterface              $subject                 The object to observe
param: array                            $config                  An optional associative
param: DocumentFactoryInterface         $documentFactory         The application's
param: CacheControllerFactoryInterface  $cacheControllerFactory  Cache controller factory
param: Profiler|null                    $profiler                The application profiler
param: SiteRouter|null                  $router                  The frontend router

getSubscribedEvents()   X-Ref
Returns an array of CMS events this plugin will listen to and the respective handlers.

return: array

onAfterRoute(Event $event)   X-Ref
Returns a cached page if the current URL exists in the cache.

param: Event  $event  The Joomla event being handled
return: void

appStateSupportsCaching()   X-Ref
Does the current application state allow for caching?

The following conditions must be met:
* This is the frontend application. This plugin does not apply to other applications.
* This is a GET request. This plugin does not apply to POST, PUT etc.
* There is no currently logged in user (pages might have user–specific content).
* The message queue is empty.

The first two tests are cached to make early returns possible; these conditions cannot change
throughout the lifetime of the request.

The other two tests MUST NOT be cached because auto–login plugins may fire anytime within
the application lifetime logging in a user and messages can be generated anytime within the
application's lifetime.

return: boolean

getCacheController()   X-Ref
Get the cache controller

return: CacheController

getCacheKey()   X-Ref
Get a cache key for the current page based on the url and possible other factors.

return: string

onAfterRender(Event $event)   X-Ref
After Render Event. Check whether the current page is excluded from cache.

param: Event  $event  The CMS event we are handling.
return: void

isExcluded()   X-Ref
Check if the page is excluded from the cache or not.

return: boolean  True if the page is excluded else false

onAfterRespond(Event $event)   X-Ref
After Respond Event. Stores page in cache.

param: Event  $event  The application event we are handling.
return: void



Generated: Wed Sep 7 05:41:13 2022 Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer