class OpenLineageService {

    public Map<String, List> getUltimateSource(String userId,
                                               String guid,
                                               boolean includeProcesses) {
        try {
            LineageVerticesAndEdges response = openLineageClient.lineage(userId, Scope.ULTIMATE_SOURCE, guid, "", includeProcesses);
            return processResponse(response,guid);
        } catch (InvalidParameterException | PropertyServerException | OpenLineageException e) {
            LOG.error("Cannot get ultimate source lineage for guid {}", guid);
            throw new RuntimeException("ultimate source lineage error", e);
        }
    }

    @Autowired public  OpenLineageService(OpenLineageClient openLineageClient);

}