public function read($key) {
        $cache = Zend_Registry::get('CacheFrontend');
        // fetch results from cache
        if ($cache->test($key)) {
            $results = $cache->load($key);
            if (!is_array($results)) {
                return -1;
            }
            $version = (int)$cache->load($this->_versionKey);
            // compare version numbers
            if (array_key_exists('version', $results) && (int)$results['version'] === $version) {
                return $results['data'];
            }
        }
        return -1;
    }