Interface ChasableData<ReadWrite extends MaterializedData & Writable>

Type Parameters:
ReadWrite - Read-Write data that will contain the result of the chase
All Known Implementing Classes:
ChasableDataImpl

public interface ChasableData<ReadWrite extends MaterializedData & Writable>
Represents data on which we can apply the chase. There are two parts: a part read-only that can be any queryable and a part read-write that is materialized and writable. The chase writes data only in the second part. The read-write part cannot have predicates that are in the read-only part.
  • Method Details

    • getDataSource

      Optional<QueryableData> getDataSource()
      Read-only data - the predicates are distinct from the read-write data
      Returns:
      the read-only data
    • getWritingTarget

      ReadWrite getWritingTarget()
      Read-write data - the predicates are distinct from the read-only data
      Returns:
      the data that will notably contain the result of the chase
    • checkValidity

      default boolean checkValidity()
      Checks the validity of the Chasable
      Returns:
      true if this Chasable is valid
    • getAllReadableData

      QueryableData getAllReadableData()
      Get a queryable data collection containing both the read-only and the read-write data
      Returns:
      a queryable data collection containing all readable data