# Zend_Application_Resource_Cachemanager

`Zend_Application_Resource_Cachemanager` kann verwendet werden um ein Bündel von `Zend_Cache` Optionen zu setzen die verwendet werden sollen wenn Caches lazy geladen werden bei der Verwendung von `Zend_Cache_Manager`

Da der Cache Manager ein Lazy Loading Mechanismus ist, werden die Optionen auf Options Templates übersetzt welche verwendet werden um ein Cache Objekt auf Anfrage zu initialisieren.

## Beispiel einer Cachemanager Ressource Konfiguration

Anbei ist eine Beispiel INI Datei die zeigt wie `Zend_Cache_Manager` konfiguriert werden kann. Das Format ist der Präfix der Cachemanager Ressource (resources.cachemanager) gefolgt von dem Namen der einer Cache Template/Bündel Option zugeordnet werden soll (z.B. resources.cachemanager.database) und letztendlich gefolgt von einer typischen `Zend_Cache` Option.

    resources.cachemanager.database.frontend.name = Core
    resources.cachemanager.database.frontend.customFrontendNaming = false
    resources.cachemanager.database.frontend.options.lifetime = 7200
    resources.cachemanager.database.frontend.options.automatic_serialization = true
    resources.cachemanager.database.backend.name = File
    resources.cachemanager.database.backend.customBackendNaming = false
    resources.cachemanager.database.backend.options.cache_dir = "/path/to/cache"
    resources.cachemanager.database.frontendBackendAutoload = false

Das Empfangen dieses Caches vom Cache Manager ist in Wirklichkeit so einfach wie der Zugriff auf eine Instanz des Managers (`Zend_Cache_Manager`) was von `Zend_Application_Resource_Cachemanager` empfangen wird beim Aufruf von `$cacheManager->getCache('database');`. Das folgende Beispiel ist von einem Controller genommen bei dem auf die Bootstrap Klasse als Front Controller Parameter zugegriffen werden kann (welcher automatisch wärend des bootstrappens zugeordnet wird). Wie man sehen kann implementiert die Cache Manager Ressource eine `getCacheManager()` Methode um die ge-bootstrappte Instanz von `Zend_Cache_Manager` zu erhalten.

    $manager = $this->getFrontController()
                ->getParam('bootstrap')
                ->getResource('cachemanager')
                ->getCacheManager();
    $dbCache = $manager->getCache('database');

Siehe auch die Methode `Zend_Cache::factory()` um eine Beschreibung der Standardwerte zu bekommen welche man zuordnen kann wenn ein Cache über eine Konfigurationsdatei konfiguriert wurde wie im obigen Beispiel einer INI Datei.