public static function cache($key, $value) {
        $key = static::createCacheKey($key);

        if ($cache = static::getCache($key)) {
            return $cache;
        }

        if ($value instanceof Closure) {
            $value = call_user_func($value);
        }

        return static::setCache($key, $value);
    }