annotate core/lib/Drupal/Core/Cache/CacheableResponseTrait.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 4c8ae668cc8c
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace Drupal\Core\Cache;
Chris@0 4
Chris@0 5 /**
Chris@0 6 * Provides an implementation of CacheableResponseInterface.
Chris@0 7 *
Chris@0 8 * @see \Drupal\Core\Cache\CacheableResponseInterface
Chris@0 9 */
Chris@0 10 trait CacheableResponseTrait {
Chris@0 11
Chris@0 12 /**
Chris@0 13 * The cacheability metadata.
Chris@0 14 *
Chris@0 15 * @var \Drupal\Core\Cache\CacheableMetadata
Chris@0 16 */
Chris@0 17 protected $cacheabilityMetadata;
Chris@0 18
Chris@0 19 /**
Chris@0 20 * {@inheritdoc}
Chris@0 21 */
Chris@0 22 public function addCacheableDependency($dependency) {
Chris@0 23 // A trait doesn't have a constructor, so initialize the cacheability
Chris@0 24 // metadata if that hasn't happened yet.
Chris@0 25 if (!isset($this->cacheabilityMetadata)) {
Chris@0 26 $this->cacheabilityMetadata = new CacheableMetadata();
Chris@0 27 }
Chris@0 28
Chris@0 29 $this->cacheabilityMetadata = $this->cacheabilityMetadata->merge(CacheableMetadata::createFromObject($dependency));
Chris@0 30
Chris@0 31 return $this;
Chris@0 32 }
Chris@0 33
Chris@0 34 /**
Chris@0 35 * {@inheritdoc}
Chris@0 36 */
Chris@0 37 public function getCacheableMetadata() {
Chris@0 38 // A trait doesn't have a constructor, so initialize the cacheability
Chris@0 39 // metadata if that hasn't happened yet.
Chris@0 40 if (!isset($this->cacheabilityMetadata)) {
Chris@0 41 $this->cacheabilityMetadata = new CacheableMetadata();
Chris@0 42 }
Chris@0 43
Chris@0 44 return $this->cacheabilityMetadata;
Chris@0 45 }
Chris@0 46
Chris@0 47 }