Class CycleFinder
java.lang.Object
net.sf.jailer.util.CycleFinder
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceConsumes cycles.static classThrown when a dependency cycle is detected.static classPath from a tablefromto another tableto. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic Collection<CycleFinder.Path> findCycle(DataModel dataModel, Collection<Table> tables, boolean findExact, Long timeout, CycleFinder.CycleConsumer cycleConsumer) Finds all dependency cycles in a data model.getCycle(Collection<Table> tables) Gets set of all tables involved in a cycle.
-
Constructor Details
-
CycleFinder
public CycleFinder()
-
-
Method Details
-
findCycle
public static Collection<CycleFinder.Path> findCycle(DataModel dataModel, Collection<Table> tables, boolean findExact, Long timeout, CycleFinder.CycleConsumer cycleConsumer) Finds all dependency cycles in a data model.- Parameters:
dataModel- the data modeltables- the set of tables to search withinfindExact-trueto find exact (non-overlapping) cyclestimeout- optional timeout in milliseconds, ornullfor no timeoutcycleConsumer- consumes cycles (optional)- Returns:
- all cycles found in the data model
-
getCycle
Gets set of all tables involved in a cycle.- Parameters:
tables- all tables- Returns:
- subset of
tablesinvolved in a cycle
-