public function isCached($key) {
        // Hier wird die eigentliche Arbeit gemacht. Die Methode prueft nicht nur, ob der Wert im Cache
        // existiert, sondern speichert ihn auch im lokalen ReferencePool. Folgende Abfragen muessen so
        // nicht ein weiteres Mal auf den Cache zugreifen, sondern koennen aus dem lokalen Pool bedient
        // werden.

        // ReferencePool abfragen
        if ($this->getReferencePool()->isCached($key)) {
            return true;
        }
        else {
            // Datei suchen und auslesen
            $file = $this->getFilePath($key);
            $data = $this->readFile($file);
            if (!$data)       // Cache-Miss
                return false;

            // Cache-Hit, $data Format: array(created, $expires, $value, $dependency)
            $created    = $data[0];
            $expires    = $data[1];
            $value      = $data[2];
            $dependency = $data[3];

            // expires pruefen
            if ($expires && $created+$expires < time()) {
                $this->drop($key);
                return false;
            }

            // Dependency pruefen
            if ($dependency) {
                $minValid = $dependency->getMinValidity();

                if ($minValid) {
                    if (time() > $created+$minValid) {
                        if (!$dependency->isValid()) {
                            $this->drop($key);
                            return false;
                        }
                        // created aktualisieren (Wert praktisch neu in den Cache schreiben)
                        return $this->set($key, $value, $expires, $dependency);
                    }
                }
                elseif (!$dependency->isValid()) {
                    $this->drop($key);
                    return false;
                }
            }

            // ok, Wert im ReferencePool speichern
            $this->getReferencePool()->set($key, $value, Cache::EXPIRES_NEVER, $dependency);
            return true;
        }
    }