Package com.vaadin.flow.internal
Class ResponseWriter
- java.lang.Object
-
- com.vaadin.flow.internal.ResponseWriter
-
- All Implemented Interfaces:
Serializable
public class ResponseWriter extends Object implements Serializable
The class that handles writing the response data into the response.For internal use only. May be renamed or removed in a future release.
- Since:
- 1.0.
- Author:
- Vaadin Ltd
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ResponseWriter(DeploymentConfiguration deploymentConfiguration)Create a response writer with the given deployment configuration.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleanacceptsBrotliResource(javax.servlet.http.HttpServletRequest request)Returns whether it is ok to serve a Brotli version of the given resource.protected booleanacceptsGzippedResource(javax.servlet.http.HttpServletRequest request)Returns whether it is ok to serve a gzipped version of the given resource.voidwriteResponseContents(String filenameWithPath, URL resourceUrl, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)Writes the contents and content type (if available) of the given resourceUrl to the response.
-
-
-
Constructor Detail
-
ResponseWriter
public ResponseWriter(DeploymentConfiguration deploymentConfiguration)
Create a response writer with the given deployment configuration.- Parameters:
deploymentConfiguration- the deployment configuration to use, notnull
-
-
Method Detail
-
writeResponseContents
public void writeResponseContents(String filenameWithPath, URL resourceUrl, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws IOException
Writes the contents and content type (if available) of the given resourceUrl to the response.WARNING: note that this should not be used for a
resourceUrlthat represents a directory! For security reasons, the directory contents should not be ever written into theresponse, and the implementation which is used for setting the content length relies onURLConnection.getContentLengthLong()method which returns incorrect values for directories.- Parameters:
filenameWithPath- the name of the file being sentresourceUrl- the URL to the file, reported by the servlet containerrequest- the request object to read fromresponse- the response object to write to- Throws:
IOException- if the servlet container threw an exception while locating the resource
-
acceptsGzippedResource
protected boolean acceptsGzippedResource(javax.servlet.http.HttpServletRequest request)
Returns whether it is ok to serve a gzipped version of the given resource.If this method returns true, the browser is ok with receiving a gzipped version of the resource. In other cases, an uncompressed file must be sent.
- Parameters:
request- the request for the resource- Returns:
- true if the servlet should attempt to serve a gzipped version of the resource, false otherwise
-
acceptsBrotliResource
protected boolean acceptsBrotliResource(javax.servlet.http.HttpServletRequest request)
Returns whether it is ok to serve a Brotli version of the given resource.If this method returns true, the browser is ok with receiving a Brotli version of the resource. In other cases, an uncompressed or gzipped file must be sent.
- Parameters:
request- the request for the resource- Returns:
- true if the servlet should attempt to serve a Brotli version of the resource, false otherwise
-
-