This repository contains homework for sprint number 6 yandex practicum. This is the backend of the task tracker program. It contains the main classes epic and subtask. All main functions are performed by In Memory Tasks Manager. Saving the history of viewing tasks is engaged in In Memory History Manager. To save the tasks tracker state file, it is provided File Backed Tasks Manager. The Manager class provides both implementations
- createNewEpic - creates a new epic by it's name and description;
- createNewSubtask - creates a new subtask by it's name, description and epics id, start time and duration time;
- removeAllEpics - removes all tasks from the epic category;
- removeAllSubtasks removes all tasks from the subtask category;
- removeSubtasksByEpicId - deletes all epic subtasks by epic id;
- removeEpic - deletes an epic task by it's id;
- removeSubtasksById - deletes an subtask by it's id;
- getEpicById - returns an epic by its id;
- getSubtaskById - returns an subtask by it's id;
- getEpicBySubtaskId - returns an epic by the id of its subtask;
- getAllEpics - return all epics ArrayList;
- getAllSubtasks - return all subtasks ArrayList;
- getAllEpicsSubtasks - return ArrayList of subtasks of one epic by the specified id;
- changeSubtaskStatusDone - change status of subtask to "Done" the specified subtask id;
- changeSubtaskStatusInProgress - change status of subtask to "In Progress" the specified subtask id;
- updateEpicName - change name of epic by the specified id;
- updateEpicDescription - change description of epic by the specified id;
- updateSubtaskName - change name of subtask by the specified id;
- updateSubtaskDescription - change description of subtask by the specified id.