forked from nus-cs2103-AY2122S1/tp
-
Notifications
You must be signed in to change notification settings - Fork 5
/
Storage.java
43 lines (31 loc) · 1.18 KB
/
Storage.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package tutoraid.storage;
import java.io.IOException;
import java.nio.file.Path;
import java.util.Optional;
import tutoraid.commons.exceptions.DataConversionException;
import tutoraid.model.ReadOnlyLessonBook;
import tutoraid.model.ReadOnlyStudentBook;
import tutoraid.model.ReadOnlyUserPrefs;
import tutoraid.model.UserPrefs;
/**
* API of the Storage component
*/
public interface Storage extends TutorAidStudentStorage, TutorAidLessonStorage, UserPrefsStorage {
@Override
Optional<UserPrefs> readUserPrefs() throws DataConversionException, IOException;
@Override
void saveUserPrefs(ReadOnlyUserPrefs userPrefs) throws IOException;
@Override
Path getStudentBookFilePath();
@Override
Optional<ReadOnlyStudentBook> readStudentBook(ReadOnlyLessonBook lessonBook)
throws DataConversionException, IOException;
@Override
void saveStudentBook(ReadOnlyStudentBook studentBook) throws IOException;
@Override
Path getLessonBookFilePath();
@Override
Optional<ReadOnlyLessonBook> readLessonBook() throws DataConversionException, IOException;
@Override
void saveLessonBook(ReadOnlyLessonBook lessonBook) throws IOException;
}