Can we wrap this in a `if (null === $this->json)` so we only actually do this once.  I might then remove the `$asArray` option if we are always using it as `true` since we wouldn't want to return the wrong cached value (object vs array).