Neos\Flow\ResourceManagement\PersistentResource::getCacheEntryIdentifier PHP Метод

getCacheEntryIdentifier() публичный Метод

Returns a string which distinctly identifies this object and thus can be used as an identifier for cache entries related to this object. Introduced through the CacheAwareInterface.
public getCacheEntryIdentifier ( ) : string
Результат string
    public function getCacheEntryIdentifier()
    {
        return $this->sha1;
    }

Usage Example

 /**
  * Get the size of a Flow PersistentResource that contains an image file.
  *
  * @param PersistentResource $resource
  * @return array width and height as keys
  * @throws ImageFileException
  */
 public function getImageSize(PersistentResource $resource)
 {
     $cacheIdentifier = $resource->getCacheEntryIdentifier();
     $imageSize = $this->imageSizeCache->get($cacheIdentifier);
     if ($imageSize !== false) {
         return $imageSize;
     }
     // TODO: Special handling for SVG should be refactored at a later point.
     if ($resource->getMediaType() === 'image/svg+xml') {
         $imageSize = ['width' => null, 'height' => null];
     } else {
         try {
             $imagineImage = $this->imagineService->read($resource->getStream());
             $sizeBox = $imagineImage->getSize();
             $imageSize = array('width' => $sizeBox->getWidth(), 'height' => $sizeBox->getHeight());
         } catch (\Exception $e) {
             throw new ImageFileException(sprintf('The given resource was not an image file your choosen driver can open. The original error was: %s', $e->getMessage()), 1336662898);
         }
     }
     $this->imageSizeCache->set($cacheIdentifier, $imageSize);
     return $imageSize;
 }