Index

A B C D E F G H I L M N O P R S T U V W 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form

S

Savable<MappableObject extends Mappable> - Class in main.utils.iocontrol
An abstract class for managing objects that can be mapped to and from key-value pairs.
Savable() - Constructor for class main.utils.iocontrol.Savable
 
save() - Method in class main.repository.Repository
Saves the list of model objects to the repository file.
save(String) - Method in class main.utils.iocontrol.Savable
Saves the list of mappable objects to a file.
separator - Static variable in class main.utils.ui.BoundaryStrings
The separator string used to visually separate UI elements.
SEPARATOR_STRING - Static variable in record class main.utils.iocontrol.ObjectOutputControlCharacters
The character to be used to separate features of an object.
setAll(List<Map<String, String>>) - Method in class main.repository.project.ProjectRepository
Sets the list of mappable objects by converting a list of maps to a list of Project objects.
setAll(List<Map<String, String>>) - Method in class main.repository.request.RequestRepository
Sets the list of mappable objects.
setAll(List<Map<String, String>>) - Method in class main.repository.user.CoordinatorRepository
Sets the list of mappable objects in the repository.
setAll(List<Map<String, String>>) - Method in class main.repository.user.FacultyRepository
Sets the list of mappable objects to a list of Supervisor objects.
setAll(List<Map<String, String>>) - Method in class main.repository.user.StudentRepository
Sets the list of mappable objects.
setAll(List<Map<String, String>>) - Method in class main.utils.iocontrol.Savable
Sets the list of mappable objects.
setCoordinatorID(String) - Method in class main.model.request.StudentDeregistrationRequest
Set the ID of the coordinator who deals with the request.
setCoordinatorID(String) - Method in class main.model.request.StudentRegistrationRequest
Set the ID of the coordinator who deals with the request.
setCoordinatorID(String) - Method in class main.model.request.TransferStudentRequest
Set the ID of the coordinator
setCoordinatorID(String) - Method in class main.model.user.Coordinator
setter for the coordinatorID
setCoordinatorName(String) - Method in class main.model.user.Coordinator
setter for the coordinatorName
setEmail(String) - Method in class main.model.user.Coordinator
setter for the email
setHashedPassword(String) - Method in class main.model.user.Coordinator
sets the hashed password of the user
setHashedPassword(String) - Method in class main.model.user.Student
setter for the password
setHashedPassword(String) - Method in class main.model.user.Supervisor
Sets the hashed password of the user
setHashedPassword(String) - Method in interface main.model.user.User
Sets the hashed password of the user
setNewTitle(String) - Method in class main.model.request.StudentChangeTitleRequest
Set the new title of the project
setProjectID(String) - Method in class main.model.request.StudentChangeTitleRequest
Set the id of the project
setProjectID(String) - Method in class main.model.user.Student
Sets the ID of the project
setProjectTitle(String) - Method in class main.model.project.Project
Set the title of the project
setStatus(ProjectStatus) - Method in class main.model.project.Project
Set the status of the project
setStatus(RequestStatus) - Method in interface main.model.request.Request
Set the status of the request.
setStatus(RequestStatus) - Method in class main.model.request.StudentChangeTitleRequest
Set the status of the request.
setStatus(RequestStatus) - Method in class main.model.request.StudentDeregistrationRequest
Set the status of the request.
setStatus(RequestStatus) - Method in class main.model.request.StudentRegistrationRequest
Set the status of the request.
setStatus(RequestStatus) - Method in class main.model.request.TransferStudentRequest
Set the status of the request
setStatus(StudentStatus) - Method in class main.model.user.Student
Sets the status of the student
setStudentID(String) - Method in class main.model.project.Project
Set the student ID of the project
setStudentID(String) - Method in class main.model.request.StudentChangeTitleRequest
Set the id of the student
setSupervisorID(String) - Method in class main.model.project.Project
Set the supervisor ID of the project
setSupervisorID(String) - Method in class main.model.request.StudentChangeTitleRequest
Set the id of the supervisor
setSupervisorID(String) - Method in class main.model.request.TransferStudentRequest
Set the ID of the supervisor
setSupervisorID(String) - Method in class main.model.user.Student
Sets the ID of the supervisor
setUp() - Method in class test.controller.AccountManagerTest
Before all test, clear all data in the database
setUp() - Method in class test.controller.StudentRegistrationMangerTest
This method sets up the test data by clearing all data from the repositories and creating a student and a project.
setUp() - Method in class test.controller.SupervisorManagerTest
Before all test, clear all data in the database Create a student and a few projects
setUp() - Static method in class test.repository.user.FacultySaveTest
This method is used to set up the supervisors.
setUp() - Method in class test.repository.user.UserRepositoryTest
This method is used to set up the supervisors.
setUpEach() - Method in class test.repository.user.UserRepositoryTest
This method is used to clear the faculty repository before each test.
showColorfulStatus() - Method in enum class main.model.request.RequestStatus
This method returns a string representation of the status with colors
showColorfulString() - Method in enum class main.model.project.ProjectStatus
Get the status of the project in a colorful string
size() - Method in class main.repository.Repository
Gets the size of the repository.
start() - Static method in class main.boundary.UIEntry
Starts the application.
status - Variable in class main.model.project.Project
the status of the project
status - Variable in class main.model.user.Student
The status of a student
status - Variable in exception class main.utils.exception.StudentStatusException
The status instance variable holds the StudentStatus of the student that caused the exception.
StringAndMapConvertor - Class in main.utils.iocontrol
The StringAndMapConvertor class provides methods to convert a String representation of a map to a Map object, and vice versa.
StringAndMapConvertor() - Constructor for class main.utils.iocontrol.StringAndMapConvertor
 
stringToMap(String) - Static method in class main.utils.iocontrol.StringAndMapConvertor
Converts a String representation of a map to a Map object.
Student - Class in main.model.user
This class represents a student, which is a type of user.
Student() - Constructor for class main.model.user.Student
default constructor for Student class
Student(String, String, String) - Constructor for class main.model.user.Student
Constructs a new Student object with the specified student ID and default password.
Student(String, String, String, String) - Constructor for class main.model.user.Student
Constructs a new Student object with the specified student ID and password.
Student(Map<String, String>) - Constructor for class main.model.user.Student
Constructs a new Student object with the specified student ID and password.
STUDENT - Enum constant in enum class main.model.user.UserType
The type of the user is student
STUDENT_CHANGE_TITLE - Enum constant in enum class main.model.request.RequestType
The request is a student change title request
STUDENT_DEREGISTRATION - Enum constant in enum class main.model.request.RequestType
The request is a student deregistration request
STUDENT_REGISTRATION - Enum constant in enum class main.model.request.RequestType
The request is a student registration request
StudentChangeTitleRequest - Class in main.model.request
This class represents a student request to change the title of a project
StudentChangeTitleRequest(String, String, String, String, String) - Constructor for class main.model.request.StudentChangeTitleRequest
Constructor
StudentChangeTitleRequest(Map<String, String>) - Constructor for class main.model.request.StudentChangeTitleRequest
Constructor
StudentDeregistrationRequest - Class in main.model.request
A request for a student to deregister from a project
StudentDeregistrationRequest(String, String, String, String) - Constructor for class main.model.request.StudentDeregistrationRequest
Constructor
StudentDeregistrationRequest(Map<String, String>) - Constructor for class main.model.request.StudentDeregistrationRequest
Constructor
studentID - Variable in class main.model.project.Project
the student of the project
studentID - Variable in class main.model.request.StudentChangeTitleRequest
The ID of the student
studentID - Variable in class main.model.request.StudentDeregistrationRequest
The ID of the student
studentID - Variable in class main.model.request.StudentRegistrationRequest
The ID of the student
studentID - Variable in class main.model.request.TransferStudentRequest
The ID of the student
studentID - Variable in class main.model.user.Student
The ID of the student.
studentMainPage(User) - Static method in class main.boundary.mainpage.StudentMainPage
This method displays the main page of a student.
StudentMainPage - Class in main.boundary.mainpage
This is a Java class that represents the main page of a student in a system or application.
StudentMainPage() - Constructor for class main.boundary.mainpage.StudentMainPage
 
StudentMainPageTest - Class in test.boundary
This class tests the functionality of the StudentMainPage class.
StudentMainPageTest() - Constructor for class test.boundary.StudentMainPageTest
 
StudentManager - Class in main.controller.request
StudentManager class
StudentManager() - Constructor for class main.controller.request.StudentManager
 
studentName - Variable in class main.model.user.Student
The name of a student
StudentRegistrationMangerTest - Class in test.controller
The StudentRegistrationManagerTest class is used to test the methods of the StudentManager class that are related to registering and deregistering a student to a project.
StudentRegistrationMangerTest() - Constructor for class test.controller.StudentRegistrationMangerTest
 
StudentRegistrationRequest - Class in main.model.request
A class that represents a student registration request
StudentRegistrationRequest(String, String, String, String) - Constructor for class main.model.request.StudentRegistrationRequest
Constructor
StudentRegistrationRequest(Map<String, String>) - Constructor for class main.model.request.StudentRegistrationRequest
Constructor
StudentRepository - Class in main.repository.user
The StudentRepository class is a repository for managing the persistence of student objects through file I/O operations.
StudentRepository() - Constructor for class main.repository.user.StudentRepository
Constructor for the StudentRepository class.
StudentStatus - Enum Class in main.model.user
This enum represents the status of a student
StudentStatus() - Constructor for enum class main.model.user.StudentStatus
 
StudentStatusException - Exception Class in main.utils.exception
The StudentStatusException class is a custom exception that is thrown when a student's status prevents them from performing an action related to selecting a project for their FYP.
StudentStatusException(StudentStatus) - Constructor for exception class main.utils.exception.StudentStatusException
Creates a new instance of the StudentStatusException class with a custom error message based on the student's status.
Supervisor - Class in main.model.user
This class represents a supervisor, which is a type of user.
Supervisor() - Constructor for class main.model.user.Supervisor
default constructor for Supervisor class
Supervisor(String, String, String) - Constructor for class main.model.user.Supervisor
Constructs a new Supervisor object with the specified supervisor ID.
Supervisor(String, String, String, String) - Constructor for class main.model.user.Supervisor
Constructs a new Supervisor object with the specified supervisor ID and password.
Supervisor(Map<String, String>) - Constructor for class main.model.user.Supervisor
Constructs a new Supervisor object from a map
SUPERVISOR_TRANSFER_STUDENT - Enum constant in enum class main.model.request.RequestType
The request is a supervisor tranfer student request
supervisorApproveOrRejectRequest(Supervisor) - Static method in class main.boundary.mainpage.SupervisorMainPage
This method allows the supervisor to approve or reject a request by entering the request ID and the desired status.
supervisorChangeProjectTitle(Supervisor) - Static method in class main.boundary.mainpage.SupervisorMainPage
This method allows the supervisor to modify the title of an existing project by entering the project ID and the new title.
supervisorCreateProject(Supervisor) - Static method in class main.boundary.mainpage.SupervisorMainPage
This method allows the supervisor to create a project by entering the required details such as project title, project description, and project capacity.
supervisorID - Variable in class main.model.project.Project
the supervisor of the project
supervisorID - Variable in class main.model.request.StudentChangeTitleRequest
The ID of the supervisor who deals with the request
supervisorID - Variable in class main.model.request.StudentDeregistrationRequest
The ID of the supervisor
supervisorID - Variable in class main.model.request.StudentRegistrationRequest
The ID of the supervisor
supervisorID - Variable in class main.model.request.TransferStudentRequest
The ID of the supervisor
supervisorID - Variable in class main.model.user.Student
The ID of the supervisor
supervisorID - Variable in class main.model.user.Supervisor
The ID of the supervisor.
supervisorMainPage(User) - Static method in class main.boundary.mainpage.SupervisorMainPage
This method displays the main page options to the supervisor and handles user input to perform corresponding actions based on the selected option.
SupervisorMainPage - Class in main.boundary.mainpage
The SupervisorMainPage class is a boundary class that represents the main page for a supervisor in a system.
SupervisorMainPage() - Constructor for class main.boundary.mainpage.SupervisorMainPage
 
SupervisorManager - Class in main.controller.request
SupervisorManager class
SupervisorManager() - Constructor for class main.controller.request.SupervisorManager
 
SupervisorManagerTest - Class in test.controller
A test class that tests the functionality of the SupervisorManager class.
SupervisorManagerTest() - Constructor for class test.controller.SupervisorManagerTest
 
supervisorName - Variable in class main.model.user.Supervisor
The name of the supervisor
supervisorRequestForTransfer(Supervisor) - Static method in class main.boundary.mainpage.SupervisorMainPage
This method allows the supervisor to submit a request for transferring a project by entering the project ID and the student ID.
supervisors - Static variable in class test.repository.user.FacultySaveTest
The array of supervisors.
supervisors - Variable in class test.repository.user.UserRepositoryTest
The array of supervisors.
SupervisorStudentsLimitExceedException - Exception Class in main.utils.exception
Thrown when a supervisor has reached the maximum number of students they can supervise.
SupervisorStudentsLimitExceedException() - Constructor for exception class main.utils.exception.SupervisorStudentsLimitExceedException
 
supervisorViewAllPendingRequest(Supervisor) - Static method in class main.boundary.mainpage.SupervisorMainPage
This method displays all pending student requests for the supervisor.
supervisorViewAllProjects(Supervisor) - Static method in class main.boundary.mainpage.SupervisorMainPage
 
supervisorViewAllRequestHistory(Supervisor) - Static method in class main.boundary.mainpage.SupervisorMainPage
This method displays all request history for the supervisor.
A B C D E F G H I L M N O P R S T U V W 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form