mirror of
https://github.com/bdnugget/magento2.git
synced 2026-11-07 09:17:35 +00:00
53 lines
1.4 KiB
PHP
53 lines
1.4 KiB
PHP
<?php
|
|
/**
|
|
* Copyright © Magento, Inc. All rights reserved.
|
|
* See COPYING.txt for license details.
|
|
*/
|
|
namespace Magento\CacheInvalidate\Observer;
|
|
|
|
use Magento\Framework\Event\ObserverInterface;
|
|
|
|
/**
|
|
* Clear configured Varnish hosts when triggering a full cache flush (e.g. from the Cache Management admin dashboard)
|
|
*/
|
|
class FlushAllCacheObserver implements ObserverInterface
|
|
{
|
|
/**
|
|
* Application config object
|
|
*
|
|
* @var \Magento\Framework\App\Config\ScopeConfigInterface
|
|
*/
|
|
protected $config;
|
|
|
|
/**
|
|
* @var \Magento\CacheInvalidate\Model\PurgeCache
|
|
*/
|
|
protected $purgeCache;
|
|
|
|
/**
|
|
* @param \Magento\PageCache\Model\Config $config
|
|
* @param \Magento\CacheInvalidate\Model\PurgeCache $purgeCache
|
|
*/
|
|
public function __construct(
|
|
\Magento\PageCache\Model\Config $config,
|
|
\Magento\CacheInvalidate\Model\PurgeCache $purgeCache
|
|
) {
|
|
$this->config = $config;
|
|
$this->purgeCache = $purgeCache;
|
|
}
|
|
|
|
/**
|
|
* Flash Varnish cache
|
|
*
|
|
* @param \Magento\Framework\Event\Observer $observer
|
|
* @return void
|
|
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
|
|
*/
|
|
public function execute(\Magento\Framework\Event\Observer $observer)
|
|
{
|
|
if ($this->config->getType() == \Magento\PageCache\Model\Config::VARNISH && $this->config->isEnabled()) {
|
|
$this->purgeCache->sendPurgeRequest(['.*']);
|
|
}
|
|
}
|
|
}
|