@staticmethod
    def load(filename, verify_version=False, halt_on_error=False):

        file = FileManager.locate_file(filename)

        if file:
            ext = os.path.splitext(file)[1]

            try:
                config = FileManager.file_interfaces[ext].load(file,
                                                               verify_version,
                                                               halt_on_error)
            except __HOLE__:
                # todo convert to exception
                FileManager.log.error("No config file processor available for file type {}"
                          .format(ext))
                sys.exit()

            return config

        elif halt_on_error:
            raise IOError("Could not find file {}".format(filename))

        else:
            return dict()
dataset/ETHPy150Open missionpinball/mpf/mpf/system/file_manager.py/FileManager.load