class ApcCache

Hierarchy

Expanded class hierarchy of ApcCache

1 file declares its use of ApcCache
ApcCacheTest.php in drupal/core/vendor/symfony/validator/Symfony/Component/Validator/Tests/Mapping/Cache/ApcCacheTest.php

File

drupal/core/vendor/symfony/validator/Symfony/Component/Validator/Mapping/Cache/ApcCache.php, line 16

Namespace

Symfony\Component\Validator\Mapping\Cache
View source
class ApcCache implements CacheInterface {
  private $prefix;
  public function __construct($prefix) {
    if (!extension_loaded('apc')) {
      throw new \RuntimeException('Unable to use ApcCache to cache validator mappings as APC is not enabled.');
    }
    $this->prefix = $prefix;
  }
  public function has($class) {
    if (!function_exists('apc_exists')) {
      $exists = false;
      apc_fetch($this->prefix . $class, $exists);
      return $exists;
    }
    return apc_exists($this->prefix . $class);
  }
  public function read($class) {
    return apc_fetch($this->prefix . $class);
  }
  public function write(ClassMetadata $metadata) {
    apc_store($this->prefix . $metadata
      ->getClassName(), $metadata);
  }

}

Members

Namesort descending Modifiers Type Description Overrides
ApcCache::$prefix private property
ApcCache::has public function Returns whether metadata for the given class exists in the cache Overrides CacheInterface::has
ApcCache::read public function Returns the metadata for the given class from the cache Overrides CacheInterface::read
ApcCache::write public function Stores a class metadata in the cache Overrides CacheInterface::write
ApcCache::__construct public function