/**
  * {@inheritdoc}
  */
 public function getCallerPermissions(Caller $caller)
 {
     $cacheId = sprintf('callers/%s/%s', $caller->getCallerType(), $caller->getCallerId());
     $permissions = $this->cache->fetch($cacheId);
     if (!$this->cache->contains($cacheId)) {
         $permissions = $this->driver->getCallerPermissions($caller);
         $this->cache->save($cacheId, $permissions);
     }
     return $permissions;
 }
Exemplo n.º 2
0
 /**
  * {@inheritdoc}
  */
 public function getCallerPermissions(Caller $caller)
 {
     $cacheId = sprintf('callers/%s/%s', $caller->getCallerType(), $caller->getCallerId());
     $item = $this->pool->getItem($cacheId);
     $permissions = $item->get();
     if ($item->isMiss()) {
         $item->lock();
         $permissions = $this->driver->getCallerPermissions($caller);
         $item->set($permissions);
     }
     return $permissions;
 }