public function readFile(string $file_name)
    {
        // yaml_read_file does not support stream wrappers
        $file_handle = @fopen($file_name, "r");
        if (!is_resource($file_handle))
            throw new IOException("Failed to read file: " . $file_name);
        return $this->readFileHandle($file_handle);
    }