public function load($uri)
    {
        try {
            $uri  = $this->validateUri($uri);
            $data = $this->loadUri($uri);

            return $this->parseData($data);
        } catch (Exception $exception) {
            throw new FailedToLoadConfigException(
                sprintf(
                    _('Could not load resource located at "%1$s". Reason: "%2$s".'),
                    $uri,
                    $exception->getMessage()
                ),
                $exception->getCode(),
                $exception
            );
        }
    }