php-api-wrapper icon indicating copy to clipboard operation
php-api-wrapper copied to clipboard

Cristal\ApiWrapper\Api::findOne doesn't utillize cache

Open toddb02 opened this issue 4 years ago • 0 comments

I was wondering if the findOne method in Cristal\ApiWrapper\Api purposely doesn't save to cache like the other find methods do. It does check if the cache key exists so it seems like more of an omission.

     * Call API for find entity of entrypoint.
     *
     * @param string $endpoint
     * @param int    $id
     * @param array  $filters
     *
     * @return array
     */
    protected function findOne(string $endpoint, $id, array $filters = [])
    {
        $uri = '/'.$endpoint.'/'.$id;
        $key = $uri.'?'.http_build_query($filters);
        if ($this->hasCache($key)) {
            return $this->getCache($key);
        }

        return $this->getTransport()->request($uri, $filters) ?? []; // <-- doesn't save to cache but checks for cache in above if statement
    }

toddb02 avatar Oct 22 '21 14:10 toddb02