CS 121: Project, Part 4

Due Wednesday, April 9, 8:00 am

20% of project credit. The project is done in two-person teams.


Implement the following features for the messenger:

1) An address book. The address book can be opened from the pull-down menu or from a toolbar button; it displays an alphabetically sorted list of contacts. For each contact, it lists the user name, the host name (or IP address), and the email address. Optionally, there may be other information, such as phone number and full name. The address book should be displayed in a window or pane of its own. When the program is closed, all the data in the address book are stored to a file. When the program is started, it is automatically reloaded.

2) A button for a adding an entry to the address book. This button pops up a dialog box that asks for the relevant information, which is then added to the address book.

3) A search dialog. When a search string is entered into the search dialog, all contacts that contain the given string are shown.

To realize the address book functionality, create classes AddressBook and Person. There is one AddressBook object in the program, which is associated with a number of Persons. It uses a Collection object to store all the Person objects. Each Person has a user name, full name, email address, phone number, and host name. Whenever a new entry for the address book is created, a new Person object is created. Write proper getter and setter methods for the Person class.


CS 121