1111import javafx .collections .transformation .FilteredList ;
1212import seedu .address .commons .core .GuiSettings ;
1313import seedu .address .commons .core .LogsCenter ;
14+ import seedu .address .model .meeting .Meeting ;
1415import seedu .address .model .person .Name ;
1516import seedu .address .model .person .Person ;
1617
@@ -21,25 +22,29 @@ public class ModelManager implements Model {
2122 private static final Logger logger = LogsCenter .getLogger (ModelManager .class );
2223
2324 private final AddressBook addressBook ;
25+ private final MeetingBook meetingBook ;
2426 private final UserPrefs userPrefs ;
2527 private final FilteredList <Person > filteredPersons ;
2628
2729 /**
2830 * Initializes a ModelManager with the given addressBook and userPrefs.
2931 */
30- public ModelManager (ReadOnlyAddressBook addressBook , ReadOnlyUserPrefs userPrefs ) {
32+ public ModelManager (ReadOnlyAddressBook addressBook , ReadOnlyMeetingBook meetingBook , ReadOnlyUserPrefs userPrefs ) {
3133 super ();
32- requireAllNonNull (addressBook , userPrefs );
34+ requireAllNonNull (addressBook , meetingBook , userPrefs );
3335
34- logger .fine ("Initializing with address book: " + addressBook + " and user prefs " + userPrefs );
36+ logger .fine ("Initializing with address book: " + addressBook
37+ + " and meetingBook " + meetingBook
38+ + " and user prefs " + userPrefs );
3539
3640 this .addressBook = new AddressBook (addressBook );
41+ this .meetingBook = new MeetingBook (meetingBook );
3742 this .userPrefs = new UserPrefs (userPrefs );
3843 filteredPersons = new FilteredList <>(this .addressBook .getPersonList ());
3944 }
4045
4146 public ModelManager () {
42- this (new AddressBook (), new UserPrefs ());
47+ this (new AddressBook (), new MeetingBook (), new UserPrefs ());
4348 }
4449
4550 //=========== UserPrefs ==================================================================================
@@ -119,6 +124,19 @@ public void setPerson(Person target, Person editedPerson) {
119124 addressBook .setPerson (target , editedPerson );
120125 }
121126
127+ //=========== Meetings ===================================================================================
128+ @ Override
129+ public boolean hasMeeting (Meeting meeting ) {
130+ requireNonNull (meeting );
131+ return meetingBook .hasMeeting (meeting );
132+ };
133+
134+ @ Override
135+ public void addMeeting (Meeting meeting ) {
136+ meetingBook .addMeeting (meeting );
137+ updateFilteredPersonList (PREDICATE_SHOW_ALL_PERSONS );
138+ };
139+
122140 //=========== Filtered Person List Accessors =============================================================
123141
124142 /**
0 commit comments