Package org.silverpeas.components.projectmanager.servlets

## Class ProjectManagerRequestRouter

- java.lang.Object
- - jakarta.servlet.GenericServlet
  - - jakarta.servlet.http.HttpServlet
    - - org.silverpeas.core.web.mvc.webcomponent.SilverpeasHttpServlet
      - - org.silverpeas.core.web.mvc.webcomponent.SilverpeasAuthenticatedHttpServlet
        - - org.silverpeas.core.web.mvc.route.ComponentRequestRouter<ProjectManagerSessionController>
          - - org.silverpeas.components.projectmanager.servlets.ProjectManagerRequestRouter

- All Implemented Interfaces:
    `jakarta.servlet.Servlet`, `jakarta.servlet.ServletConfig`, `Serializable`

      public class ProjectManagerRequestRouter
      extends org.silverpeas.core.web.mvc.route.ComponentRequestRouter<ProjectManagerSessionController>

  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.silverpeas.core.web.mvc.webcomponent.SilverpeasHttpServlet

      `org.silverpeas.core.web.mvc.webcomponent.SilverpeasHttpServlet.HttpError, org.silverpeas.core.web.mvc.webcomponent.SilverpeasHttpServlet.UserSessionStatus`

  - ### Field Summary

    - ### Fields inherited from class jakarta.servlet.http.HttpServlet

      `LEGACY_DO_HEAD`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ProjectManagerRequestRouter()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `ProjectManagerSessionController` | `createComponentSessionController​(org.silverpeas.core.web.mvc.controller.MainSessionController mainSessionCtrl, org.silverpeas.core.web.mvc.controller.ComponentContext componentContext)` |
    `String` | `getDestination​(String function, ProjectManagerSessionController projectManagerSC, org.silverpeas.core.web.http.HttpRequest request)` | This method has to be implemented by the component request rooter it has to compute a destination page
    `String` | `getSessionControlBeanName()` | This method has to be implemented in the component request rooter class. returns the session control bean name to be put in the request object ex : for almanach, returns "almanach"

    - ### Methods inherited from class org.silverpeas.core.web.mvc.route.ComponentRequestRouter

      `checkUserAuthorization, doGet, doPost, emptyJsonResponse, getComponentId, getOrganizationController, hasTheSessionSecurityTokenToBeRenewed, sendJson, updateSessionManagement`

    - ### Methods inherited from class org.silverpeas.core.web.mvc.webcomponent.SilverpeasAuthenticatedHttpServlet

      `getMainSessionController, getSessionInfo, getSynchronizerTokenService, renewSessionSecurityToken, service, throwUserSessionExpiration`

    - ### Methods inherited from class org.silverpeas.core.web.mvc.webcomponent.SilverpeasHttpServlet

      `existOpenedUserSession, forbidden, notFound, preconditionFailed, redirectOrForwardService, sendError, sendError, throwHttpForbiddenError, throwHttpForbiddenError, throwHttpNotFoundError, throwHttpNotFoundError, throwHttpPreconditionFailedError, throwHttpPreconditionFailedError`

    - ### Methods inherited from class jakarta.servlet.http.HttpServlet

      `doDelete, doHead, doOptions, doPut, doTrace, getLastModified, init, service`

    - ### Methods inherited from class jakarta.servlet.GenericServlet

      `destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ProjectManagerRequestRouter

          public ProjectManagerRequestRouter()

  - ### Method Detail

    - #### getSessionControlBeanName

          public String getSessionControlBeanName()

      This method has to be implemented in the component request rooter class. returns the session control bean name to be put in the request object ex : for almanach, returns "almanach"
      Specified by:
        `getSessionControlBeanName` in class `org.silverpeas.core.web.mvc.route.ComponentRequestRouter<ProjectManagerSessionController>`
      Returns:
        the session control bean name.

    - #### createComponentSessionController

          public ProjectManagerSessionController createComponentSessionController​(org.silverpeas.core.web.mvc.controller.MainSessionController mainSessionCtrl,
                                                                                  org.silverpeas.core.web.mvc.controller.ComponentContext componentContext)

      Specified by:
        `createComponentSessionController` in class `org.silverpeas.core.web.mvc.route.ComponentRequestRouter<ProjectManagerSessionController>`

    - #### getDestination

          public String getDestination​(String function,
                                       ProjectManagerSessionController projectManagerSC,
                                       org.silverpeas.core.web.http.HttpRequest request)

      This method has to be implemented by the component request rooter it has to compute a destination page
      Specified by:
        `getDestination` in class `org.silverpeas.core.web.mvc.route.ComponentRequestRouter<ProjectManagerSessionController>`
      Parameters:
        `function` - The entering request function (ex : "Main")
        `projectManagerSC` - The component Session Control, build and initialized.
        `request` - the incoming HTTP request.
      Returns:
        The complete destination URL for a forward (ex : "/almanach/jsp/almanach.jsp?flag=user")