def METHOD_NAME(cls, config_dict, metadata_config: OpenMetadataConnection):
    config = WorkflowSource.parse_obj(config_dict)
    connection: ImpalaConnection = config.serviceConnection.__root__.config
    if not isinstance(connection, ImpalaConnection):
        raise InvalidSourceException(
            f"Expected ImpalaConnection, but got {connection}"
        )
    return cls(config, metadata_config)