X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fdeferred%2FCdnCacheUpdate.php;h=470086ae9f5cc09c9912078afe9afbe765a2db46;hb=09fcee61106146adbc8889f3950a2ea02cda0da6;hp=32f6adc6420ea53a6e18396f61eb6924c40fd4b3;hpb=8eac2feedb7ee093d2c48504e1eb2b8a9dbc8452;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/deferred/CdnCacheUpdate.php b/includes/deferred/CdnCacheUpdate.php index 32f6adc642..470086ae9f 100644 --- a/includes/deferred/CdnCacheUpdate.php +++ b/includes/deferred/CdnCacheUpdate.php @@ -22,6 +22,7 @@ */ use Wikimedia\Assert\Assert; +use MediaWiki\MediaWikiServices; /** * Handles purging appropriate CDN URLs given a title (or titles) @@ -64,7 +65,7 @@ class CdnCacheUpdate implements DeferrableUpdate, MergeableUpdate { /** * @param Title $title * @return CdnCacheUpdate - * @deprecated 1.27 + * @deprecated since 1.27 */ public static function newSimplePurge( Title $title ) { return new CdnCacheUpdate( $title->getCdnUrls() ); @@ -109,13 +110,20 @@ class CdnCacheUpdate implements DeferrableUpdate, MergeableUpdate { wfDebugLog( 'squid', __METHOD__ . ': ' . implode( ' ', $urlArr ) ); // Reliably broadcast the purge to all edge nodes - $relayer = EventRelayerGroup::singleton()->getRelayer( 'cdn-url-purges' ); - $relayer->notify( + $relayer = MediaWikiServices::getInstance()->getEventRelayerGroup() + ->getRelayer( 'cdn-url-purges' ); + $ts = microtime( true ); + $relayer->notifyMulti( 'cdn-url-purges', - [ - 'urls' => array_values( $urlArr ), // JSON array - 'timestamp' => microtime( true ) - ] + array_map( + function ( $url ) use ( $ts ) { + return [ + 'url' => $url, + 'timestamp' => $ts, + ]; + }, + $urlArr + ) ); // Send lossy UDP broadcasting if enabled