Package org.silverpeas.components.hyperlink.servlets

## Class HyperlinkRequestRouter

- java.lang.Object
- - javax.servlet.GenericServlet
  - - javax.servlet.http.HttpServlet
    - - org.silverpeas.core.web.mvc.webcomponent.SilverpeasHttpServlet
      - - org.silverpeas.core.web.mvc.webcomponent.SilverpeasAuthenticatedHttpServlet
        - - org.silverpeas.core.web.mvc.route.ComponentRequestRouter<HyperlinkSessionController>
          - - org.silverpeas.components.hyperlink.servlets.HyperlinkRequestRouter

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

      public class HyperlinkRequestRouter
      extends org.silverpeas.core.web.mvc.route.ComponentRequestRouter<HyperlinkSessionController>

  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
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `GO_TO_URL_ACTION` |

  - ### Constructor Summary

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

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `HyperlinkSessionController` | `createComponentSessionController​(org.silverpeas.core.web.mvc.controller.MainSessionController mainSessionCtrl, org.silverpeas.core.web.mvc.controller.ComponentContext context)` |
    `String` | `getDestination​(String function, HyperlinkSessionController hyperlinkSCC, 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 javax.servlet.http.HttpServlet

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

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

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

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

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

- - ### Field Detail

    - #### GO_TO_URL_ACTION

          public static final String GO_TO_URL_ACTION

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### HyperlinkRequestRouter

          public HyperlinkRequestRouter()

  - ### Method Detail

    - #### createComponentSessionController

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

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

    - #### 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<HyperlinkSessionController>`

    - #### getDestination

          public String getDestination​(String function,
                                       HyperlinkSessionController hyperlinkSCC,
                                       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<HyperlinkSessionController>`
      Parameters:
        `function` - The entering request function (ex : "Main.jsp")
        `hyperlinkSCC` - The component Session Control, build and initialised.
        `request` - the HttpRequest
      Returns:
        The complete destination URL for a forward (ex : "/almanach/jsp/almanach.jsp?flag=user")