Skip to content

abhisheksoni099/dag-tasks-executor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Dag Tasks Executor

  • Runs tasks as represented by a directed acyclic graph
  • Mode of operation
    • Serial
    • Parallel

Class Diagram

---
title: DagExecutor
---
classDiagram
	direction TB
	class DagExecutor {
		<<Interface>>
		void execute(GraphData graphData)
	}
	DagExecutor <|.. SerialDagExecutor
	DagExecutor <|.. ParallelDagExecutor
	class DagExecutorFactory {
		DagExecutor getInstance(ExecutorMode executorMode)
	}
Loading
classDiagram
	direction TB
	class DagExecutors {
		void executeTasksFromFileName(String fileName, ExecutorMode executorMode)
	}
	class ExecutorMode {
		<<Enumeration>>
		SERIAL
		PARALLEL
	}
Loading
---
title: Graph
---
classDiagram
	class InputToGraphDataConverter {
		<<interface>>
		GraphData toGraphData(T input)
	}
	InputToGraphDataConverter <|.. FileInputToGraphDataConverter
	class GraphData {
		Map⟨String, ArrayList⟨Task⟩⟩ adjacencyGraph
		Map⟨String, Task⟩ tasksByName
	}
	class Task {
		<<Interface>>
	}
	Runnable <|-- Task
	class BaseTask {
		<<Abstract>>
		String name
	}
	Task <|.. BaseTask
	class SleepTask {
		int sleepTimeInSeconds
	}
	BaseTask <|-- SleepTask
	class Edge {
		Task taskA
		Task taskB
	}
Loading

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Languages