All Known Implementing Classes:
LineageGraphStorageService

public interface LineageGraph
  • Method Details

    • storeToGraph

      void storeToGraph(Set<GraphContext> graphContext)
      Stores a lineage event into the lineage graph database
      Parameters:
      graphContext - graph Collection
    • updateNeighbours

      void updateNeighbours(LineageSyncUpdateContext syncUpdateContext)
      Updates the neighbours of a node by removing all the relationships that no longer have a direct link to the entity. SyncUpdateContext contains the context for syncing the relationships of a node after an update.
    • updateEntity

      void updateEntity(LineageEntity lineageEntity)
      Updates a vertex in the Graph
      Parameters:
      lineageEntity - entity to be updated
    • upsertRelationship

      void upsertRelationship(LineageRelationship lineageRelationship)
      Create or update the relationship between two edges In case the vertexes are not created, they are firstly created
      Parameters:
      lineageRelationship - relationship to be updated or created
    • updateRelationship

      void updateRelationship(LineageRelationship lineageRelationship)
      Updates a vertex in the Graph
      Parameters:
      lineageRelationship - relationship to be updated
    • updateClassification

      void updateClassification(Set<GraphContext> classificationContext)
      Updates an entity's classification in the Graph
      Parameters:
      classificationContext - classification context
    • deleteClassification

      void deleteClassification(Set<GraphContext> classificationContext)
      Deletes an entity's classification in the Graph
      Parameters:
      classificationContext - classification context
    • deleteRelationship

      void deleteRelationship(String guid)
      Deletes a relationship in the graph
      Parameters:
      guid - unique identifier of the entity to be deleted
    • deleteEntity

      void deleteEntity(String guid, Object version)
      /** Deletes a vertex in the graph
      Parameters:
      guid - unique identifier of the entity to be deleted
      version - version of the entity to be deleted
    • saveAssetLineageUpdateTime

      void saveAssetLineageUpdateTime(Long timestamp)
      Save last asset lineage update time in the graph
      Parameters:
      timestamp - the standard epoch time in milliseconds
    • getAssetLineageUpdateTime

      Optional<Long> getAssetLineageUpdateTime()
      Gets last asset lineage update time from the graph
      Returns:
      last update time represented as epoch time milliseconds
    • isEntityInGraph

      Boolean isEntityInGraph(String guid)
      Returns whether an entity exists in the graph or not
      Parameters:
      guid - the lineage entity guid
      Returns:
      the boolean