import java.util.ArrayList;
import java.util.List;
class Task {
private String name;
private int duration;
private List<Task> prerequisites;
private List<Task> successors;
public Task(String name, int duration) {
this.name = name;
this.duration = duration;
this.prerequisites = new ArrayList<>();
this.successors = new ArrayList<>();
}
public void addPrerequisite(Task prerequisite) {
prerequisites.add(prerequisite);
prerequisite.addSuccessor(this);
}
private void addSuccessor(Task successor) {
successors.add(successor);
}
public String getName() {
return name;
}
public int getDuration() {
return duration;
}
public List<Task> getPrerequisites() {
return prerequisites;
}
public List<Task> getSuccessors() {
return successors;
}
}