public class BootstrapHandler extends SynchronizedRequestHandler
| Modifier and Type | Class and Description |
|---|---|
protected static class |
BootstrapHandler.BootstrapContext
Provides context information for the bootstrap process.
|
protected static class |
BootstrapHandler.BootstrapPageBuilder
Builds bootstrap pages.
|
static class |
BootstrapHandler.BootstrapUriResolver
The URI resolver used in the bootstrap process.
|
static interface |
BootstrapHandler.PageBuilder
Interface for objects capable of building the bootstrap page.
|
SynchronizedRequestHandler.ResponseWriter| Modifier and Type | Field and Description |
|---|---|
static String |
SERVICE_WORKER_HEADER |
MAX_BUFFER_SIZE| Modifier | Constructor and Description |
|---|---|
|
BootstrapHandler()
Creates an instance of the handler with default
BootstrapHandler.PageBuilder. |
protected |
BootstrapHandler(BootstrapHandler.PageBuilder pageBuilder)
Creates an instance of the handler using provided page builder.
|
| Modifier and Type | Method and Description |
|---|---|
static void |
addLicenseChecker(org.jsoup.nodes.Document indexDocument,
DeploymentConfiguration config)
Adds the needed overrides for the license checker to work when in
development mode.
|
protected boolean |
canHandleRequest(VaadinRequest request)
Check whether a request may be handled by this handler.
|
protected BootstrapHandler.BootstrapContext |
createAndInitUI(Class<? extends UI> uiClass,
VaadinRequest request,
VaadinResponse response,
VaadinSession session) |
protected BootstrapHandler.BootstrapContext |
createBootstrapContext(VaadinRequest request,
VaadinResponse response,
UI ui,
Function<VaadinRequest,String> contextPathCallback)
|
protected elemental.json.JsonObject |
getInitialUidl(UI ui)
Generates the initial UIDL message which is included in the initial
bootstrap page.
|
protected BootstrapHandler.PageBuilder |
getPageBuilder()
Returns the current page builder object.
|
protected static String |
getServiceUrl(BootstrapHandler.BootstrapContext context)
Gets the service URL as a URL relative to the request URI.
|
protected static Class<? extends UI> |
getUIClass(VaadinRequest request)
Returns the UI class mapped for servlet that handles the given request.
|
protected void |
initializeUIWithRouter(VaadinRequest request,
UI ui) |
protected static String |
readResource(String fileName) |
protected static Optional<String> |
resolvePageTitle(BootstrapHandler.BootstrapContext context)
Resolves the initial page title for the given bootstrap context and
cancels any pending JS execution for it.
|
protected void |
setupPushConnectionFactory(PushConfiguration pushConfiguration,
BootstrapHandler.BootstrapContext context) |
boolean |
synchronizedHandleRequest(VaadinSession session,
VaadinRequest request,
VaadinResponse response)
Identical to
SynchronizedRequestHandler.handleRequest(VaadinSession, VaadinRequest, VaadinResponse)
except the VaadinSession is locked before this is called and
unlocked after this has completed. |
protected boolean |
writeErrorCodeIfRequestLocationIsInvalid(VaadinRequest request,
VaadinResponse response)
Checks whether the request is for a valid location, and if not, writes
the error code for the response.
|
getRequestBody, handleRequest, isReadAndWriteOutsideSessionLock, synchronizedHandleRequestpublic static final String SERVICE_WORKER_HEADER
public BootstrapHandler()
BootstrapHandler.PageBuilder.protected BootstrapHandler(BootstrapHandler.PageBuilder pageBuilder)
pageBuilder - Page builder to use.protected BootstrapHandler.PageBuilder getPageBuilder()
protected boolean canHandleRequest(VaadinRequest request)
SynchronizedRequestHandlertrue which means that all requests will be handled by
calling
SynchronizedRequestHandler.synchronizedHandleRequest(VaadinSession, VaadinRequest, VaadinResponse)
with the session locked.canHandleRequest in class SynchronizedRequestHandlerrequest - the request to handletrue if the request handling should continue once
the session has been locked; false if there's no
need to lock the session since the request would still not be
handled.public boolean synchronizedHandleRequest(VaadinSession session, VaadinRequest request, VaadinResponse response) throws IOException
SynchronizedRequestHandlerSynchronizedRequestHandler.handleRequest(VaadinSession, VaadinRequest, VaadinResponse)
except the VaadinSession is locked before this is called and
unlocked after this has completed.synchronizedHandleRequest in class SynchronizedRequestHandlersession - The session for the requestrequest - The request to handleresponse - The response object to which a response can be written.IOException - If an IO error occurredSynchronizedRequestHandler.handleRequest(VaadinSession, VaadinRequest, VaadinResponse)public static void addLicenseChecker(org.jsoup.nodes.Document indexDocument,
DeploymentConfiguration config)
protected boolean writeErrorCodeIfRequestLocationIsInvalid(VaadinRequest request, VaadinResponse response) throws IOException
request - the request to checkresponse - the response to writetrue if location was invalid and error code was written,
false if not (location was valid)IOException - in case writing to response failsprotected static String getServiceUrl(BootstrapHandler.BootstrapContext context)
context - the bootstrap contextprotected static Optional<String> resolvePageTitle(BootstrapHandler.BootstrapContext context)
context - the bootstrap contextprotected BootstrapHandler.BootstrapContext createAndInitUI(Class<? extends UI> uiClass, VaadinRequest request, VaadinResponse response, VaadinSession session)
protected void initializeUIWithRouter(VaadinRequest request, UI ui)
protected BootstrapHandler.BootstrapContext createBootstrapContext(VaadinRequest request, VaadinResponse response, UI ui, Function<VaadinRequest,String> contextPathCallback)
request - the request objectresponse - the response objectui - the UI objectprotected void setupPushConnectionFactory(PushConfiguration pushConfiguration, BootstrapHandler.BootstrapContext context)
protected static Class<? extends UI> getUIClass(VaadinRequest request)
This method is protected for testing purposes.
request - the request for the UIprotected elemental.json.JsonObject getInitialUidl(UI ui)
ui - the UI for which the UIDL should be generatedCopyright © 2025. All rights reserved.