public function add($key, $data, $ttl)
    {
        if (!$this->enabled)
            return true;

        try {
            $data = $this->storageFormat($key, $data, $ttl);
            $nKey = $this->key($key);

            // Store the cache object
            $ret = @$this->getConnection()->add($nKey, $data, $this->flags, $ttl);

            $this->Logger->debug("". (($ret) ? "Successful" : "Failed to") . " add '{$key}'\n");

            return $ret;

        } catch (Exception $e) {
            throw new CacheException($e->getMessage(), $e->getCode());
        }
    }