CSC 217 Lab 10 - Iterators

CSC 217 Lab 10 - Update RegistrationManager

CSC 217 Lab 10 Update RegistrationManager

RegistrationManager is expected to maintain a FacultyDirectory in addition to the StudentDirectory and CourseCatalog. Additionally, that means Faculty should be able to log into the system. The following changes will integrate FacultyDirectory into RegistrationManager.

Update RegistrationManager State

Add a private field FacutlyDirectory to RegistrationManager and construct the field in ReigstrationManager().

Implement RegistrationManager.getFacultyDirectory()

Add a method RegistrationManager.getFacultyDirectory() that returns the FacultyDirectory.

Update RegistrationManager.login()

Update RegistrationManager.login() so that a Faculty in the FacultyDirectory can login. You may assume that there a Student and Faculty member will not share an id. However, if there was an id in common for a Student and Faculty, then the User would default to logging in the Student rather than the Faculty.

Update RegistrationManagerTest

Add test cases to ensure the new functionality is working correctly and that you have at least 80% statement coverage.

Update GUI Classes

Update the GUI classes so that your program will compile.

Pass all Tests

Run all unit tests and ensure that they are all passing and that the teaching staff unit tests are also all passing before moving on.

Push to GitHub

Push your PackScheduler project to GitHub

  • Add the unstaged changes to the index.
  • Commit and push changes. Remember to use a meaningful commit message describing how you have changed the code.

Reminder: Staging and Pushing to GitHub

GitHub Resources:

Check Jenkins

Ensure that your Jenkins job is reflecting the results that you expect for the level of completion of your lab assignment.

Reminder: Interpreting Jenkins

Check the following items on Jenkins for your last build and use the results to estimate your grade: