Index
All Classes and Interfaces|All Packages|Constant Field Values
A
- ALLOCATED - Enum constant in enum class main.Models.projectStatus_ENUM
-
project is allocated after coordinator approves the request
- APPROVED - Enum constant in enum class main.Models.requestStatus_ENUM
-
To show the request is approved.
- authenticateStaff(String, String) - Static method in class main.Utils.Authenticator
-
Method to authenticate staff
- authenticateStudent(String, String) - Static method in class main.Utils.Authenticator
-
Method to authenticate student
- Authenticator - Class in main.Utils
-
Provide methods to authenticate different user types The class does not have any public constructors and should be used as a static utility class.
- Authenticator() - Constructor for class main.Utils.Authenticator
- AVAILABLE - Enum constant in enum class main.Models.projectStatus_ENUM
-
project is available
B
- BLUE - Static variable in class main.Utils.ConsoleColors
-
blue console color
- BLUE_BOLD_BRIGHT - Static variable in class main.Utils.ConsoleColors
-
bold bright blue console color
C
- clearScreen() - Static method in class main.Utils.ConsoleUtils
-
Clears the console
- ConsoleColors - Class in main.Utils
-
Provide code to change console color The class does not have any public constructors and should be used as a static utility class.
- ConsoleColors() - Constructor for class main.Utils.ConsoleColors
- ConsoleUtils - Class in main.Utils
-
Provide method to for console related methods The class does not have any public constructors and should be used as a static utility class.
- ConsoleUtils() - Constructor for class main.Utils.ConsoleUtils
- convertSalt(String) - Method in class main.Utils.Encryptor
-
Convert salt from type String to Byte array
- CoordAllProject - Class in main.Pages
-
Page for Coordinator to view all projects
- CoordAllProject(Page, Coordinator) - Constructor for class main.Pages.CoordAllProject
-
Base constructor for this page
- CoordEditTitle - Class in main.Pages
-
Page for Coordinator to edit title of a project
- CoordEditTitle(Page, Coordinator) - Constructor for class main.Pages.CoordEditTitle
-
Constructor for this class
- Coordinator - Class in main.Models
-
Coordinator is a subclass of Supervisor
- Coordinator(String, String) - Constructor for class main.Models.Coordinator
-
Constructing the Coordinator class
- CoordinatorMain - Class in main.Pages
-
Page for Coordinator's main menu
- CoordinatorMain(Page, Coordinator) - Constructor for class main.Pages.CoordinatorMain
-
Base constructor for this page
- CoordMyProject - Class in main.Pages
-
Page for Coordinator to view own project
- CoordMyProject(Page, Coordinator) - Constructor for class main.Pages.CoordMyProject
-
Base constructor for this page
- CoordRequestHistory - Class in main.Pages
-
Page for Coordinator to all request's history
- CoordRequestHistory(Page, Coordinator) - Constructor for class main.Pages.CoordRequestHistory
-
Base constructor for this page
- CoordTransferStudent - Class in main.Pages
-
Page for Coordinator to request to transfer student
- CoordTransferStudent(Page, Coordinator) - Constructor for class main.Pages.CoordTransferStudent
-
Base constructor for this page
- CoordViewRequest - Class in main.Pages
-
Page for Coordinator to view all requests
- CoordViewRequest(Page, Coordinator) - Constructor for class main.Pages.CoordViewRequest
-
Base constructor for this page
- countSupervising - Variable in class main.Models.Supervisor
-
to keep track of how many students the supervisor is supervising
- CreateProjectPage - Class in main.Pages
-
Page for Supervisor to create projects
- CreateProjectPage(Page, Supervisor) - Constructor for class main.Pages.CreateProjectPage
-
Base constructor for this page
D
- DeregisterProjectReq - Class in main.Models
-
DeregisterProjectRequest is a Request's subclass to deal with deregister request
- DeregisterProjectReq(String, String, String, String, requestStatus_ENUM, String, String) - Constructor for class main.Models.DeregisterProjectReq
-
Constructor for DeregisterProjectReq
E
- EditTitleReq - Class in main.Models
-
EditTitleReq is a subclass of Request that deals with edit title request
- EditTitleReq(String, String, String, String, requestStatus_ENUM, String, String, String) - Constructor for class main.Models.EditTitleReq
-
Constructor for EditTitleReq
- email - Variable in class main.Models.User
-
Email of user
- Encryptor - Class in main.Utils
-
Provide methods to hash password and verify password
- Encryptor(String) - Constructor for class main.Utils.Encryptor
-
Base constructor for Encryptor class
- executable() - Method in class main.Pages.CoordAllProject
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.CoordEditTitle
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.CoordinatorMain
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.CoordMyProject
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.CoordRequestHistory
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.CoordTransferStudent
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.CoordViewRequest
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.CreateProjectPage
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.Exit
-
Main executable for this page
- executable() - Method in class main.Pages.Page
-
main functionality of the page
- executable() - Method in class main.Pages.SetPassword
-
main functionality of the page
- executable() - Method in class main.Pages.StaffLogin
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.StaffMain
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.StudentLogin
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.StudentMain
-
Main executable for this page
- executable() - Method in class main.Pages.StudentMyProject
-
Main executable for this page
- executable() - Method in class main.Pages.StudentProjectRegister
-
Main executable for this page
- executable() - Method in class main.Pages.StudentProjectView
-
Main executable for this page
- executable() - Method in class main.Pages.StudentRequestDeregister
-
Main executable for this page
- executable() - Method in class main.Pages.StudentRequestHistory
-
Main executable for this page
- executable() - Method in class main.Pages.StudentRequestTitleChange
-
Main executable for this page Please see the
Page
class for abstract method - executable() - Method in class main.Pages.SupervisorDeregister
-
Main executable for SupervisorDeregister page
- executable() - Method in class main.Pages.SupervisorEditTitle
-
Main executable for SupervisorEditTitle page
- executable() - Method in class main.Pages.supervisorProjectView
-
Main executable for supervisorProjectView page
- executable() - Method in class main.Pages.SupervisorRequestHistory
-
Main executable for SupervisorRequestHistory page
- executable() - Method in class main.Pages.SupervisorTransferStudent
-
Main executable for SupervisorTransferStudent page
- executable() - Method in class main.Pages.supervisorViewRequest
-
Main executable for supervisorViewRequest page
- executable() - Method in class main.Pages.Welcome
-
Main executable for the page
- Exit - Class in main.Pages
-
Exit the current page to return to the previous page
- Exit(Page) - Constructor for class main.Pages.Exit
-
Constructor for Exit
F
- FileHandler - Class in main.Utils
-
Provide methods to read and write file The class does not have any public constructors and should be used as a static utility class.
- FileHandler() - Constructor for class main.Utils.FileHandler
- findFile(String, String, int) - Static method in class main.Utils.FileHandler
-
Method to find if target exist in file
G
- generateHashedPassword(byte[]) - Method in class main.Utils.Encryptor
-
Method to convert byte array to String
- generateLongId() - Static method in class main.Utils.UIDGenerator
-
Method to 65536 UID in a millis
- generateSalt() - Method in class main.Utils.Encryptor
-
Method to generate salt for hashing
- getComments() - Method in class main.Models.Request
-
Gets comments in request
- getDeregisteredStatus() - Method in class main.Models.Student
-
Gets deregistered status
- getEmail() - Method in class main.Models.User
-
Gets user's email
- getID() - Method in class main.Models.Project
-
Method to get the ID of project
- getName() - Method in class main.Models.User
-
Gets user's name
- getNewSupervisorID() - Method in class main.Models.TransferStudentReq
-
Gets the replacement supervisor's ID
- getPreviousPage() - Method in class main.Pages.Page
-
Gets previous page visited
- getProject() - Method in class main.Models.Student
-
Gets student's project
- getProjectbyID(String) - Method in class main.Models.Supervisor
-
Gets supervisor's project according to project's ID
- getProjectID() - Method in class main.Models.Request
-
Gets the projectID
- getProjects() - Method in class main.Models.Supervisor
-
Gets list of projects created by supervisor
- getProjects(int) - Method in class main.Models.Coordinator
-
Method to retrieve projects of an user
- getRequestbyID(String) - Method in class main.Models.Student
-
Method to get request by its ID
- getRequestbyID(String) - Method in class main.Models.Supervisor
-
Method to get a request in the request list by reuqest ID
- getRequesteeID() - Method in class main.Models.Request
-
Gets ID of requestee
- getRequesterID() - Method in class main.Models.Request
-
Gets the requester's ID
- getRequestID() - Method in class main.Models.Request
-
Gets the requestID
- getRequests() - Method in class main.Models.Student
-
Gets requests made by student
- getRequests() - Method in class main.Models.Supervisor
-
Getter to get supervisor's request arraylist
- getRequestStatus() - Method in class main.Models.Request
-
Gets the status of request
- getRequestType() - Method in class main.Models.Request
-
Gets the type of request
- getStatus() - Method in class main.Models.Project
-
Method to get the status of project
- getStudentEmail() - Method in class main.Models.Project
-
Method to get the email of project's student
- getStudentID() - Method in class main.Models.Project
-
Method to get the ID of project's student
- getStudentName() - Method in class main.Models.Project
-
Method to get the naem of projec's student
- getSupCount() - Method in class main.Models.Supervisor
-
Gets number of students supervising
- getSupervisorEmail() - Method in class main.Models.Project
-
Method to get the email of project's supervisor
- getSupervisorID() - Method in class main.Models.Project
-
Method to get the ID of project's supervisor
- getSupervisorName() - Method in class main.Models.Project
-
Method to get the name of project's supervisor
- getTitle() - Method in class main.Models.EditTitleReq
-
Method to get the new title of request
- getTitle() - Method in class main.Models.Project
-
Method to get the title of project
- getType() - Method in class main.Models.User
-
Gets type of user
- getUserID() - Method in class main.Models.User
-
Gets user's ID
- GREEN - Static variable in class main.Utils.ConsoleColors
-
green console color
H
- hash(byte[]) - Method in class main.Utils.Encryptor
-
Method for hashing password
I
- ID - Static variable in class main.Utils.ProjSortBy
-
Comparator to sort by project ID
- ID - Static variable in class main.Utils.ReqSortBy
-
Comparator to sort by request ID
- IinitialiseProject - Interface in main.Models
-
Provide methods to authenticate different user types
- IinitialiseRequest - Interface in main.Models
-
Interface for classes that have to initialise request
- initialiseProject() - Method in class main.Models.Coordinator
-
Method to initialise the project list of an user
- initialiseProject() - Method in interface main.Models.IinitialiseProject
-
method to initialise the project
- initialiseProject() - Method in class main.Models.Student
-
intialises student's project
- initialiseProject() - Method in class main.Models.Supervisor
-
initialise 1 project
- initialiseRequest() - Method in class main.Models.Coordinator
-
Method to initialize the request list of an user
- initialiseRequest() - Method in interface main.Models.IinitialiseRequest
-
Method to initialise request
- initialiseRequest() - Method in class main.Models.Student
-
intialises student made request
- initialiseRequest() - Method in class main.Models.Supervisor
-
initialises request to be made
M
- main - package main
- main(String[]) - Static method in class main.MainApp
-
Main driver
- main.Models - package main.Models
- main.Pages - package main.Pages
- main.Utils - package main.Utils
- MainApp - Class in main
-
The main application
- MainApp() - Constructor for class main.MainApp
N
P
- Page - Class in main.Pages
-
Abstract class for pages.
- Page(Page) - Constructor for class main.Pages.Page
-
Constructor of Page
- PENDING - Enum constant in enum class main.Models.requestStatus_ENUM
-
To show the request is pending.
- printInfo(String, String, String) - Method in class main.Models.DeregisterProjectReq
-
Method to print the information of request
- printInfo(String, String, String) - Method in class main.Models.EditTitleReq
-
Method to print the information of the request
- printInfo(String, String, String) - Method in class main.Models.RegisterProjectReq
-
prints the information of the request
- printInfo(String, String, String) - Method in class main.Models.Request
-
Prints the information of the request
- printInfo(String, String, String) - Method in class main.Models.TransferStudentReq
-
prints the request's information
- printProject() - Method in class main.Models.Student
-
prints the student's project's details
- printProjects() - Method in class main.Models.Supervisor
-
prints out the list of projects that can be viewed and selected by student
- printProjects(int) - Method in class main.Models.Coordinator
-
Method to print the projects of an user
- processRequest(String) - Method in class main.Models.DeregisterProjectReq
-
Method to process the request
- processRequest(String) - Method in class main.Models.EditTitleReq
-
Method to process request
- processRequest(String) - Method in class main.Models.RegisterProjectReq
-
approve/reject the request and update the student, supervisor and project
- processRequest(String) - Method in class main.Models.Request
-
Process the request
- processRequest(String) - Method in class main.Models.TransferStudentReq
-
approve/reject the request
- Project - Class in main.Models
-
Provide methods to authenticate different user types
- Project(String, String, String, String, projectStatus_ENUM, String, String) - Constructor for class main.Models.Project
-
Constructor of Project class
- projectStatus_ENUM - Enum Class in main.Models
-
Provide status of project
- ProjSortBy - Class in main.Utils
-
Provide methods to sort project arraylist The class does not have any public constructors and should be used as a static utility class.
- ProjSortBy() - Constructor for class main.Utils.ProjSortBy
R
- readFile(String, String, int) - Static method in class main.Utils.FileHandler
-
Method to read file
- RED - Static variable in class main.Utils.ConsoleColors
-
red console color
- RegisterProjectReq - Class in main.Models
-
The class that handles the student's registration of a project
- RegisterProjectReq(String, String, String, String, requestStatus_ENUM, String, String) - Constructor for class main.Models.RegisterProjectReq
-
constructor of RegisterProjectReq
- REJECTED - Enum constant in enum class main.Models.requestStatus_ENUM
-
To show the request is rejected.
- ReqSortBy - Class in main.Utils
-
Provide methods to sort request arraylist
- ReqSortBy() - Constructor for class main.Utils.ReqSortBy
- Request - Class in main.Models
-
The Request base class.
- Request(String, String, String, String, requestStatus_ENUM, String, String) - Constructor for class main.Models.Request
-
The constructor of Request
- requestStatus_ENUM - Enum Class in main.Models
-
An Enum that corresponds to the different status types of requests
- RESERVED - Enum constant in enum class main.Models.projectStatus_ENUM
-
project is reserved after a student request for it
- RESET - Static variable in class main.Utils.ConsoleColors
-
resets console color
S
- setComments(String) - Method in class main.Models.Request
-
Sets comments in request
- setNewSupervisorID(String) - Method in class main.Models.TransferStudentReq
-
Sets the replacement supervisor's ID
- setPassword(String, String) - Method in class main.Pages.SetPassword
-
Sets new password of user
- SetPassword - Class in main.Pages
-
A Page to set password of user
- SetPassword(Page, String, String) - Constructor for class main.Pages.SetPassword
-
Constructor of setPassword
- setProjectID(String) - Method in class main.Models.Request
-
Sets the projectID of the request
- setRequesteeID(String) - Method in class main.Models.Request
-
Sets ID of requestee
- setRequesterID(String) - Method in class main.Models.Request
-
Sets the request's requester's ID
- setRequestID(String) - Method in class main.Models.Request
-
Sets the requestID
- setRequestStatus(requestStatus_ENUM) - Method in class main.Models.Request
-
Sets request status
- setRequestType(String) - Method in class main.Models.Request
-
Sets the type of request
- setStudent(Student) - Method in class main.Models.Project
-
Method to assign the project to a student
- setSupervisor(Supervisor) - Method in class main.Models.Project
-
Method to assign the project to a supervisor
- setTitle(String) - Method in class main.Models.EditTitleReq
-
Method to set title of a project
- StaffLogin - Class in main.Pages
-
Page for Supervisor to login
- StaffLogin(Page, String) - Constructor for class main.Pages.StaffLogin
-
Base constructor for this page
- StaffMain - Class in main.Pages
-
Page for Supervisor's main menu
- StaffMain(Page, Supervisor) - Constructor for class main.Pages.StaffMain
-
Base constructor for this page
- Status - Static variable in class main.Utils.ProjSortBy
-
Comparator to sort by project status
- Status - Static variable in class main.Utils.ReqSortBy
-
Comparator to sort by request status
- Student - Class in main.Models
-
The Student class
- Student(String, String, Boolean) - Constructor for class main.Models.Student
-
Constructor of Student
- StudentLogin - Class in main.Pages
-
Page for student's login
- StudentLogin(Page, String) - Constructor for class main.Pages.StudentLogin
-
Base constructor for this page
- StudentMain - Class in main.Pages
-
StudentMain is a subclass of Page that allows student to interact with the FYP system
- StudentMain(Page, Student) - Constructor for class main.Pages.StudentMain
-
Constructor for this class
- StudentMyProject - Class in main.Pages
-
StudentMyProject is a subclass of Page that allows student to view their project
- StudentMyProject(Page, Student) - Constructor for class main.Pages.StudentMyProject
-
Constructor for this class
- StudentName - Static variable in class main.Utils.ProjSortBy
-
Comarator to sort by student name
- StudentProjectRegister - Class in main.Pages
-
StudentProjectRegister is a subclass of Page that allows student to register projects
- StudentProjectRegister(Page, Student, String[]) - Constructor for class main.Pages.StudentProjectRegister
-
Constructor for this class
- StudentProjectView - Class in main.Pages
-
StudentProjectView is a subclass of Page that allows student to view all projects
- StudentProjectView(Page, Student) - Constructor for class main.Pages.StudentProjectView
-
Constructor for this class
- StudentRequestDeregister - Class in main.Pages
-
StudentRequestDeregister is a subclass of Page that allows student to deregister their project
- StudentRequestDeregister(Page, Student) - Constructor for class main.Pages.StudentRequestDeregister
-
Constructor for this class
- StudentRequestHistory - Class in main.Pages
-
StudentRequestHistory is a subclass of Page that allows student to view their request history
- StudentRequestHistory(Page, Student) - Constructor for class main.Pages.StudentRequestHistory
-
Constructor for this class
- StudentRequestTitleChange - Class in main.Pages
-
StudentRequestTitleChange is a subclass of Page that allows supervisor to transfer student
- StudentRequestTitleChange(Page, Student) - Constructor for class main.Pages.StudentRequestTitleChange
-
Constructor for this class
- Supervisor - Class in main.Models
-
The Supervisor class
- Supervisor(String, String) - Constructor for class main.Models.Supervisor
-
constructor of supervisor
- SupervisorDeregister - Class in main.Pages
-
SupervisorDeregister is a subclass of Page that allows supervisor to deregister project
- SupervisorDeregister(Page, Supervisor) - Constructor for class main.Pages.SupervisorDeregister
-
SupervisorDeregister constructor
- SupervisorEditTitle - Class in main.Pages
-
SupervisorEditTitle is a subclass of Page that allows supervisor to edit title of projects
- SupervisorEditTitle(Page, Supervisor) - Constructor for class main.Pages.SupervisorEditTitle
-
SupervisorEditTitle constructor
- supervisorProjectView - Class in main.Pages
-
supervisorProjectView is a subclass of Page that allows supervisor to view their project
- supervisorProjectView(Page, Supervisor) - Constructor for class main.Pages.supervisorProjectView
-
Constructor for this page
- SupervisorRequestHistory - Class in main.Pages
-
SupervisorRequestHistory is a subclass of Page that allows supervisor to view request history
- SupervisorRequestHistory(Page, Supervisor) - Constructor for class main.Pages.SupervisorRequestHistory
-
SupervisorRequestHistory constructor
- SupervisorTransferStudent - Class in main.Pages
-
SupervisorTransferStudent is a subclass of Page that allows supervisor to transfer student
- SupervisorTransferStudent(Page, Supervisor) - Constructor for class main.Pages.SupervisorTransferStudent
-
SupervisorTransferStudent constructor
- supervisorViewRequest - Class in main.Pages
-
supervisorViewRequest is a subclass of Page that allows supervisor to view request
- supervisorViewRequest(Page, Supervisor) - Constructor for class main.Pages.supervisorViewRequest
-
supervisorViewRequest constructor
T
- TransferStudentReq - Class in main.Models
-
The class for requesting to transfer student to another supervisor
- TransferStudentReq(String, String, String, String, requestStatus_ENUM, String, String, String) - Constructor for class main.Models.TransferStudentReq
-
Constructor of the request to transfer student
- type - Variable in class main.Models.User
-
type of user
- Type - Static variable in class main.Utils.ReqSortBy
-
Comparator to sort by request Type
U
- UIDGenerator - Class in main.Utils
-
Provide methods to generate Unique ID for request and project The class does not have any public constructors and should be used as a static utility class.
- UIDGenerator() - Constructor for class main.Utils.UIDGenerator
- UNAVAILABLE - Enum constant in enum class main.Models.projectStatus_ENUM
-
project is unavailable when supervisor is supervising 2 projects
- updateProject() - Method in interface main.Models.IinitialiseProject
-
Method to update the project
- updateProject() - Method in class main.Models.Student
-
updates the student's project
- updateProject() - Method in class main.Models.Supervisor
-
updates the list of projects created by supervisor and creates a new project
- updateRequest() - Method in interface main.Models.IinitialiseRequest
-
Method to update request
- updateRequest() - Method in class main.Models.Student
-
updates student made request list
- updateRequest() - Method in class main.Models.Supervisor
-
Updates request list of supervisor
- User - Class in main.Models
-
The user base class.
- User(String, String) - Constructor for class main.Models.User
-
Constructor of User
- userID - Variable in class main.Models.User
-
ID of user
V
- valueOf(String) - Static method in enum class main.Models.projectStatus_ENUM
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class main.Models.requestStatus_ENUM
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class main.Models.projectStatus_ENUM
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class main.Models.requestStatus_ENUM
-
Returns an array containing the constants of this enum class, in the order they are declared.
- verifyUserPassword(String, String, String) - Method in class main.Utils.Encryptor
-
Method to verify user input password with actual password
W
- Welcome - Class in main.Pages
-
Welcome page
- Welcome(Page) - Constructor for class main.Pages.Welcome
-
Constructor for the Welcome class
- writeFile(String, String, int, String) - Static method in class main.Utils.FileHandler
-
Method to write input string to target line
Y
- YELLOW - Static variable in class main.Utils.ConsoleColors
-
yellow console color
All Classes and Interfaces|All Packages|Constant Field Values