Class OpenLineageService
java.lang.Object
org.odpi.openmetadata.userinterface.uichassis.springboot.service.OpenLineageService
@Service
@EnableConfigurationProperties(LineageGraphDisplayService.class)
public class OpenLineageService
extends Object
This class responsibility is to interact with Open Lineage Services(OLS),
process the returned response and return it in a format understood by view
-
Constructor Summary
ConstructorsConstructorDescriptionOpenLineageService
(OpenLineageClient openLineageClient, LineageGraphDisplayService lineageGraphDisplayService) -
Method Summary
Modifier and TypeMethodDescriptiongetElementHierarchy
(String userId, ElementHierarchyRequest elementHierarchyRequest) Returns a subraph representing the hierarchy of a certain node, based on the requestgetEndToEndLineage
(String userId, String guid, boolean includeProcesses) getEntityDetails
(String userId, String guid) Gets node details.Gets nodes names of certain type with display name containing a certain value.Gets available entities types from lineage repository.getUltimateDestination
(String userId, String guid, boolean includeProcesses) getUltimateSource
(String userId, String guid, boolean includeProcesses) getVerticalLineage
(String userId, String guid, boolean includeProcesses) search
(String userId, LineageSearchRequest lineageSearchRequest) Gets node details.
-
Constructor Details
-
OpenLineageService
@Autowired public OpenLineageService(OpenLineageClient openLineageClient, LineageGraphDisplayService lineageGraphDisplayService) - Parameters:
openLineageClient
- client to connect to open lineage serviceslineageGraphDisplayService
- the rules for display
-
-
Method Details
-
getUltimateSource
public Graph getUltimateSource(String userId, String guid, boolean includeProcesses) throws InvalidParameterException, PropertyServerException, OpenLineageException - Parameters:
userId
- id of the user triggering the requestguid
- unique identifier if the assetincludeProcesses
- if true includes processes in the response- Returns:
- map of nodes and edges describing the ultimate sources for the asset
- Throws:
InvalidParameterException
- from the underlying clientPropertyServerException
- from the underlying clientOpenLineageException
- from the underlying client
-
getEndToEndLineage
public Graph getEndToEndLineage(String userId, String guid, boolean includeProcesses) throws InvalidParameterException, PropertyServerException, OpenLineageException - Parameters:
userId
- id of the user triggering the requestguid
- unique identifier if the assetincludeProcesses
- if true includes processes in the response- Returns:
- map of nodes and edges describing the end to end flow
- Throws:
InvalidParameterException
- from the underlying clientPropertyServerException
- from the underlying clientOpenLineageException
- from the underlying client
-
getUltimateDestination
public Graph getUltimateDestination(String userId, String guid, boolean includeProcesses) throws InvalidParameterException, PropertyServerException, OpenLineageException - Parameters:
userId
- id of the user triggering the requestguid
- unique identifier if the assetincludeProcesses
- if true includes processes in the response- Returns:
- map of nodes and edges describing the ultimate destinations of the asset
- Throws:
InvalidParameterException
- from the underlying clientPropertyServerException
- from the underlying clientOpenLineageException
- from the underlying client
-
getVerticalLineage
public Graph getVerticalLineage(String userId, String guid, boolean includeProcesses) throws InvalidParameterException, PropertyServerException, OpenLineageException - Parameters:
userId
- id of the user triggering the requestguid
- unique identifier if the assetincludeProcesses
- if true includes processes in the response- Returns:
- map of nodes and edges describing the glossary terms linked to the asset
- Throws:
InvalidParameterException
- from the underlying clientPropertyServerException
- from the underlying clientOpenLineageException
- from the underlying client
-
getEntityDetails
public LineageVertex getEntityDetails(String userId, String guid) throws InvalidParameterException, PropertyServerException, OpenLineageException Gets node details.- Parameters:
userId
- the user idguid
- the guid- Returns:
- the node details
- Throws:
InvalidParameterException
- from the underlying clientPropertyServerException
- from the underlying clientOpenLineageException
- from the underlying client
-
search
public List<LineageVertex> search(String userId, LineageSearchRequest lineageSearchRequest) throws InvalidParameterException, PropertyServerException, OpenLineageException Gets node details.- Parameters:
userId
- the user idlineageSearchRequest
- the body for search- Returns:
- the node details
- Throws:
InvalidParameterException
- from the underlying clientPropertyServerException
- from the underlying clientOpenLineageException
- from the underlying client
-
getTypes
Gets available entities types from lineage repository.- Parameters:
userId
- user ID- Returns:
- the available entities types
-
getNodes
Gets nodes names of certain type with display name containing a certain value.- Parameters:
userId
- user IDtype
- the type of the nodes name to search forsearchValue
- the string to be contained in the qualified name of the node - case insensitivelimit
- the maximum number of node names to retrieve- Returns:
- the list of node names
-
getElementHierarchy
Returns a subraph representing the hierarchy of a certain node, based on the request- Parameters:
elementHierarchyRequest
- contains the guid of the queried node and the hierarchyType of the display name of the nodes- Returns:
- a subgraph containing all relevant paths,
-