protected function parseFileContents($file)
    {
        try {

            $data = $this->files->get($file);

        } catch (FileNotFoundException $e) {

            throw new CouldNotConnectException("Local file could not be found: '{$file}'");

        } catch (Exception $e) {

            throw new CouldNotConnectException("Local file unreadable or unopenable: '{$file}'");
        }

        // store the file name as the request method, so the interpreter can know what the source was;
        $this->request->setMethod(basename($file));

        // add information to mark reading the file a success
        $information = new ServiceResponseInformation();
        $information->setStatusCode(200);

        return $this->interpreter->interpret($this->request, $data, $information);
    }