コード例 #1
0
ファイル: global.php プロジェクト: nagyistoce/piwik
        $instanceId = $instanceId ? '/' . $instanceId : '';
    } else {
        $instanceId = '';
    }
    return $root . '/tmp' . $instanceId;
}, 'path.cache' => DI\string('{path.tmp}/cache/tracker/'), 'Piwik\\Cache\\Eager' => function (ContainerInterface $c) {
    $backend = $c->get('Piwik\\Cache\\Backend');
    $cacheId = $c->get('cache.eager.cache_id');
    if (SettingsServer::isTrackerApiRequest()) {
        $eventToPersist = 'Tracker.end';
        $cacheId .= 'tracker';
    } else {
        $eventToPersist = 'Request.dispatch.end';
        $cacheId .= 'ui';
    }
    $cache = new Eager($backend, $cacheId);
    \Piwik\Piwik::addAction($eventToPersist, function () use($cache) {
        $cache->persistCacheIfNeeded(43200);
    });
    return $cache;
}, 'Piwik\\Cache\\Backend' => function (ContainerInterface $c) {
    try {
        $backend = $c->get('ini.Cache.backend');
    } catch (NotFoundException $ex) {
        $backend = 'chained';
        // happens if global.ini.php is not available
    }
    return \Piwik\Cache::buildBackend($backend);
}, 'cache.eager.cache_id' => function () {
    return 'eagercache-' . str_replace(array('.', '-'), '', \Piwik\Version::VERSION) . '-';
}, 'Psr\\Log\\LoggerInterface' => DI\object('Psr\\Log\\NullLogger'), 'Piwik\\Translation\\Loader\\LoaderInterface' => DI\object('Piwik\\Translation\\Loader\\LoaderCache')->constructor(DI\get('Piwik\\Translation\\Loader\\JsonFileLoader')), 'observers.global' => array(), 'Piwik\\EventDispatcher' => DI\object()->constructorParameter('observers', DI\get('observers.global')));
コード例 #2
0
ファイル: Plugin.php プロジェクト: nuxwin/piwik
 public function findMultipleComponents($directoryWithinPlugin, $expectedSubclass)
 {
     $this->createCacheIfNeeded();
     $cacheId = 'Plugin' . $this->pluginName . $directoryWithinPlugin . $expectedSubclass;
     if ($this->cache->contains($cacheId)) {
         $components = $this->cache->fetch($cacheId);
         if ($this->includeComponents($components)) {
             return $components;
         } else {
             // problem including one cached file, refresh cache
         }
     }
     $components = $this->doFindMultipleComponents($directoryWithinPlugin, $expectedSubclass);
     $this->cache->save($cacheId, $components);
     return $components;
 }
コード例 #3
0
ファイル: InvalidLicenses.php プロジェクト: piwik/piwik
 public function clearCache()
 {
     $this->cache->delete($this->cacheKey);
 }