You are here

public function CachedReader::getMethodAnnotations in Service Container 7

Same name and namespace in other branches
  1. 7.2 modules/providers/service_container_annotation_discovery/lib/Doctrine/annotations/lib/Doctrine/Common/Annotations/CachedReader.php \Doctrine\Common\Annotations\CachedReader::getMethodAnnotations()

Gets the annotations applied to a method.

Parameters

\ReflectionMethod $method The ReflectionMethod of the method from which: the annotations should be read.

Return value

array An array of Annotations.

Overrides Reader::getMethodAnnotations

1 call to CachedReader::getMethodAnnotations()
CachedReader::getMethodAnnotation in modules/providers/service_container_annotation_discovery/lib/Doctrine/annotations/lib/Doctrine/Common/Annotations/CachedReader.php
Gets a method annotation.

File

modules/providers/service_container_annotation_discovery/lib/Doctrine/annotations/lib/Doctrine/Common/Annotations/CachedReader.php, line 141

Class

CachedReader
A cache aware annotation reader.

Namespace

Doctrine\Common\Annotations

Code

public function getMethodAnnotations(\ReflectionMethod $method) {
  $class = $method
    ->getDeclaringClass();
  $cacheKey = $class
    ->getName() . '#' . $method
    ->getName();
  if (isset($this->loadedAnnotations[$cacheKey])) {
    return $this->loadedAnnotations[$cacheKey];
  }
  if (false === ($annots = $this
    ->fetchFromCache($cacheKey, $class))) {
    $annots = $this->delegate
      ->getMethodAnnotations($method);
    $this
      ->saveToCache($cacheKey, $annots);
  }
  return $this->loadedAnnotations[$cacheKey] = $annots;
}