Class SessionRequestHandler

java.lang.Object
com.vaadin.flow.server.communication.SessionRequestHandler
All Implemented Interfaces:
RequestHandler, Serializable

public class SessionRequestHandler extends Object implements RequestHandler
Handles a request by passing it to each registered RequestHandler in the session in turn until one produces a response. This method is used for requests that have not been handled by any specific functionality in the servlet.

The request handlers are invoked in the reverse order in which they were added to the session until a response has been produced. This means that the most recently added handler is used first and the first request handler that was added to the session is invoked towards the end unless any previous handler has already produced a response.

The session is not locked during execution of the request handlers. The request handler can itself decide if it needs to lock the session or not.

For internal use only. May be renamed or removed in a future release.

Since:
1.0
See Also:
  • Constructor Details

    • SessionRequestHandler

      public SessionRequestHandler()
  • Method Details

    • handleRequest

      public boolean handleRequest(VaadinSession session, VaadinRequest request, VaadinResponse response) throws IOException
      Description copied from interface: RequestHandler
      Called when a request needs to be handled. If a response is written, this method should return true to indicate that no more request handlers should be invoked for the request.

      Note that request handlers by default do not lock the session. If you are using VaadinSession or anything inside the VaadinSession you must ensure the session is locked. This can be done by extending SynchronizedRequestHandler or by using VaadinSession.accessSynchronously(Command) or UI.accessSynchronously(Command).

      Specified by:
      handleRequest in interface RequestHandler
      Parameters:
      session - The session for the request
      request - The request to handle
      response - The response object to which a response can be written.
      Returns:
      true if a response has been written and no further request handlers should be called, otherwise false
      Throws:
      IOException - If an IO error occurred