public function restore( $id, $attributes = array(), $search = false )
    {
        // If cache is explicitely disabled, we don't try to process it
        if( $this->isCacheEnabled === false )
        {
            return false;
        }

        $this->clusterCacheFile = eZClusterFileHandler::instance(
            $this->properties['location'] . $this->generateIdentifier( $id, $attributes )
        );
        $result = $this->clusterCacheFile->processCache(
            array( $this, 'clusterRetrieve' ),
            null, // We won't call any generate callback as we're using ezcCache mechanism, so it's up to the cache caller to generate
            $this->properties['options']['ttl'],
            null,
            compact( 'id', 'attributes', 'fileName' )
        );

        if ( !$result instanceof eZClusterFileFailure )
        {
            return $result;
        }

        return false;
    }