1919import seedu .address .model .ModelManager ;
2020import seedu .address .model .ReadOnlyUserPrefs ;
2121import seedu .address .model .UserPrefs ;
22+ import seedu .address .model .meeting .MeetingBook ;
23+ import seedu .address .model .meeting .ReadOnlyMeetingBook ;
2224import seedu .address .model .person .AddressBook ;
2325import seedu .address .model .person .ReadOnlyAddressBook ;
2426import seedu .address .model .util .SampleDataUtil ;
2527import seedu .address .storage .AddressBookStorage ;
2628import seedu .address .storage .JsonAddressBookStorage ;
29+ import seedu .address .storage .JsonMeetingBookStorage ;
2730import seedu .address .storage .JsonUserPrefsStorage ;
31+ import seedu .address .storage .MeetingBookStorage ;
2832import seedu .address .storage .Storage ;
2933import seedu .address .storage .StorageManager ;
3034import seedu .address .storage .UserPrefsStorage ;
@@ -57,7 +61,8 @@ public void init() throws Exception {
5761 UserPrefsStorage userPrefsStorage = new JsonUserPrefsStorage (config .getUserPrefsFilePath ());
5862 UserPrefs userPrefs = initPrefs (userPrefsStorage );
5963 AddressBookStorage addressBookStorage = new JsonAddressBookStorage (userPrefs .getAddressBookFilePath ());
60- storage = new StorageManager (addressBookStorage , userPrefsStorage );
64+ MeetingBookStorage meetingBookStorage = new JsonMeetingBookStorage (userPrefs .getMeetingBookFilePath ());
65+ storage = new StorageManager (addressBookStorage , meetingBookStorage , userPrefsStorage );
6166
6267 initLogging (config );
6368
@@ -75,22 +80,42 @@ public void init() throws Exception {
7580 */
7681 private Model initModelManager (Storage storage , ReadOnlyUserPrefs userPrefs ) {
7782 Optional <ReadOnlyAddressBook > addressBookOptional ;
78- ReadOnlyAddressBook initialData ;
83+ Optional <ReadOnlyMeetingBook > meetingBookOptional ;
84+ ReadOnlyAddressBook initialDataAddressBook ;
85+ ReadOnlyMeetingBook initialDataMeetingBook ;
86+
7987 try {
8088 addressBookOptional = storage .readAddressBook ();
8189 if (!addressBookOptional .isPresent ()) {
8290 logger .info ("Data file not found. Will be starting with a sample AddressBook" );
8391 }
84- initialData = addressBookOptional .orElseGet (SampleDataUtil ::getSampleAddressBook );
92+ initialDataAddressBook = addressBookOptional .orElseGet (SampleDataUtil ::getSampleAddressBook );
8593 } catch (DataConversionException e ) {
8694 logger .warning ("Data file not in the correct format. Will be starting with an empty AddressBook" );
87- initialData = new AddressBook ();
95+ initialDataAddressBook = new AddressBook ();
8896 } catch (IOException e ) {
8997 logger .warning ("Problem while reading from the file. Will be starting with an empty AddressBook" );
90- initialData = new AddressBook ();
98+ initialDataAddressBook = new AddressBook ();
9199 }
92100
93- return new ModelManager (initialData , userPrefs );
101+ //--============= MEETING ==================================================================================
102+
103+ try {
104+ meetingBookOptional = storage .readMeetingBook ();
105+ if (!meetingBookOptional .isPresent ()) {
106+ logger .info ("Data file not found. Will be starting with a sample MeetingBook" );
107+ }
108+ initialDataMeetingBook = meetingBookOptional .orElseGet (SampleDataUtil ::getSampleMeetingBook );
109+ } catch (DataConversionException e ) {
110+ logger .warning ("Data file not in the correct format. Will be starting with an empty MeetingBook" );
111+ initialDataMeetingBook = new MeetingBook ();
112+ } catch (IOException e ) {
113+ logger .warning ("Problem while reading from the file. Will be starting with an empty MeetingBook" );
114+ initialDataMeetingBook = new MeetingBook ();
115+ }
116+
117+
118+ return new ModelManager (initialDataAddressBook , initialDataMeetingBook , userPrefs );
94119 }
95120
96121 private void initLogging (Config config ) {
0 commit comments