Package com.vaadin.server.communication
Class PushRequestHandler
- java.lang.Object
-
- com.vaadin.server.communication.PushRequestHandler
-
- All Implemented Interfaces:
RequestHandler,SessionExpiredHandler,Serializable
public class PushRequestHandler extends Object implements SessionExpiredHandler
Handles requests to open a push (bidirectional) communication channel between the client and the server. After the initial request, communication through the push channel is managed byPushAtmosphereHandlerandPushHandler- Since:
- 7.1
- Author:
- Vaadin Ltd
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description PushRequestHandler(VaadinServletService service)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected PushHandlercreatePushHandler(VaadinServletService service)Creates a push handler for this request handler.voiddestroy()booleanhandleRequest(VaadinSession session, VaadinRequest request, VaadinResponse response)Called when a request needs to be handled.booleanhandleSessionExpired(VaadinRequest request, VaadinResponse response)Called when the a session expiration has occurred and a notification needs to be sent to the user.
-
-
-
Constructor Detail
-
PushRequestHandler
public PushRequestHandler(VaadinServletService service) throws ServiceException
- Throws:
ServiceException
-
-
Method Detail
-
createPushHandler
protected PushHandler createPushHandler(VaadinServletService service)
Creates a push handler for this request handler.Create your own request handler and override this method if you want to customize the
PushHandler, e.g. to dynamically decide the suspend timeout.- Parameters:
service- the vaadin service- Returns:
- the push handler to use for this service
- Since:
- 7.6
-
handleRequest
public boolean handleRequest(VaadinSession session, VaadinRequest request, VaadinResponse response) throws IOException
Description copied from interface:RequestHandlerCalled when a request needs to be handled. If a response is written, this method should returntrueto 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
SynchronizedRequestHandleror by usingVaadinSession.accessSynchronously(Runnable)orUI.accessSynchronously(Runnable).- Specified by:
handleRequestin interfaceRequestHandler- Parameters:
session- The session for the requestrequest- The request to handleresponse- 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
-
destroy
public void destroy()
-
handleSessionExpired
public boolean handleSessionExpired(VaadinRequest request, VaadinResponse response) throws IOException
Description copied from interface:SessionExpiredHandlerCalled when the a session expiration has occurred and a notification needs to be sent to the user. If a response is written, this method should returntrueto indicate that no moreSessionExpiredHandlerhandlers should be invoked for the request.- Specified by:
handleSessionExpiredin interfaceSessionExpiredHandler- Parameters:
request- The request to handleresponse- 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
-
-