Module sc2002_fypms
Package controllers

Class FYPCoordinatorController

    • Constructor Detail

      • FYPCoordinatorController

        public FYPCoordinatorController()
        Constructs an instance of the FYPCoordinatorController class.
    • Method Detail

      • start

        public void start()
        Starts the FYP Coordinator menu and prompts the user to select an action. The method loops until the user chooses to exit the FYP Coordinator menu.
        Overrides:
        start in class SupervisorController
      • viewProjectsByFilter

        private void viewProjectsByFilter()
        Displays all projects with filters applied.
      • viewApproveRejectPendingRequest

        protected void viewApproveRejectPendingRequest()
        Overrides the SupervisorController's method for viewing, approving, and rejecting pending requests. This implementation is tailored for the FYP Coordinator role, handling additional request types and updating project availability when necessary.
        Overrides:
        viewApproveRejectPendingRequest in class SupervisorController
      • updateAvailabilityOfProjects

        private void updateAvailabilityOfProjects​(Request request)
        A utility function that updates the availability of projects after a request (allocate, transfer, deregister) has been completed.
        Parameters:
        request - A Request object representing the request.
      • logSupervisorStatus

        private void logSupervisorStatus​(java.lang.String name,
                                         java.lang.String id,
                                         int numOfProjects)
        Logs the status of the supervisor, including their name, ID, and the number of projects they are currently supervising.
        Parameters:
        name - The supervisor's name.
        id - The supervisor's ID.
        numOfProjects - The number of projects the supervisor is currently supervising.
      • logMaxCapacityReached

        private void logMaxCapacityReached()
        Logs a message indicating that a supervisor's maximum project capacity has been reached adn that remaining available projects are now unavailable.
      • logMaxCapacityUnreached

        private void logMaxCapacityUnreached()
        Logs a message indicating that a supervisor's maximum project capacity has not been reached and that unavailable projects are not available.