protected function fetchDefaultCacheRecord($method, $args)
    {
        // Instead of using has() we directly implement the value getter
        // to avoid additional cache hits if the key exists.
        if (is_null($value = parent::get($args['key']))) {
            $this->checkReservedKeyPattern($args['key']);

            call_user_func_array([$this, 'storeKeywords'], array_only($args, ['key', 'minutes', 'keywords']));

            $this->setKeywordsOperation(true);

            $value = call_user_func_array(['parent', $method], array_values($args));

            $this->setKeywordsOperation(false);
        }

        if (! $this->operatingOnKeywords()) {
            $this->resetCurrentKeywords();
        }

        return $value;
    }