Package main.Models

Class Request

java.lang.Object
main.Models.Request
Direct Known Subclasses:
DeregisterProjectReq, EditTitleReq, RegisterProjectReq, TransferStudentReq

public abstract class Request extends Object
The Request base class. Different request types will inherit this class
Since:
2023-04-13
  • Constructor Details

    • Request

      public Request(String requestID, String requesterID, String requesteeID, String requestType, requestStatus_ENUM status, String projectID, String comment)
      The constructor of Request
      Parameters:
      requestID - The ID of the request
      requesterID - The ID of the requester
      requesteeID - The ID of the requestee: either Coordinator or Supervisor
      requestType - The type of request
      status - The request status
      projectID - The ID of the project
      comment - Comments made by requester/requestee
  • Method Details

    • getRequestStatus

      public requestStatus_ENUM getRequestStatus()
      Gets the status of request
      Returns:
      the request status
    • getRequestID

      public String getRequestID()
      Gets the requestID
      Returns:
      ID of request
    • setRequestID

      public void setRequestID(String requestID)
      Sets the requestID
      Parameters:
      requestID - ID of request
    • getRequesterID

      public String getRequesterID()
      Gets the requester's ID
      Returns:
      requester's ID
    • setRequesterID

      public void setRequesterID(String requesterID)
      Sets the request's requester's ID
      Parameters:
      requesterID - ID of requester
    • getProjectID

      public String getProjectID()
      Gets the projectID
      Returns:
      ID of project
    • setProjectID

      public void setProjectID(String projectID)
      Sets the projectID of the request
      Parameters:
      projectID - ID of project
    • getRequestType

      public String getRequestType()
      Gets the type of request
      Returns:
      request's type
    • setRequestType

      public void setRequestType(String requestType2)
      Sets the type of request
      Parameters:
      requestType2 - type of request
    • setRequestStatus

      public void setRequestStatus(requestStatus_ENUM requestStatus)
      Sets request status
      Parameters:
      requestStatus - status of request
    • getComments

      public String getComments()
      Gets comments in request
      Returns:
      comments
    • setComments

      public void setComments(String comments)
      Sets comments in request
      Parameters:
      comments - comments made by requester/requestee
    • getRequesteeID

      public String getRequesteeID()
      Gets ID of requestee
      Returns:
      ID of requestee
    • setRequesteeID

      public void setRequesteeID(String requesteeID)
      Sets ID of requestee
      Parameters:
      requesteeID - ID of requestee
    • printInfo

      public abstract void printInfo(String info1, String info2, String info3)
      Prints the information of the request
      Parameters:
      info1 - project title
      info2 - supervisor's ID
      info3 - supervisor's email
    • processRequest

      public abstract void processRequest(String decision)
      Process the request
      Parameters:
      decision - approve or reject the request