Class SystemFileBodyWriter
java.lang.Object
io.micronaut.http.server.netty.body.SystemFileBodyWriter
- All Implemented Interfaces:
io.micronaut.http.body.MessageBodyWriter<io.micronaut.http.server.types.files.SystemFile>,io.micronaut.http.body.ResponseBodyWriter<io.micronaut.http.server.types.files.SystemFile>
@Singleton
@Internal
public final class SystemFileBodyWriter
extends Object
implements io.micronaut.http.body.ResponseBodyWriter<io.micronaut.http.server.types.files.SystemFile>
Body writer for
SystemFiles.- Since:
- 4.0.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final NettyHttpServerConfiguration.FileTypeHandlerConfiguration -
Constructor Summary
ConstructorsConstructorDescriptionSystemFileBodyWriter(NettyHttpServerConfiguration.FileTypeHandlerConfiguration configuration, ExecutorService ioExecutor) -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanhandleIfModifiedAndHeaders(io.micronaut.http.HttpRequest<?> request, io.micronaut.http.MutableHttpResponse<?> response, io.micronaut.http.server.types.files.FileCustomizableResponseType systemFile, io.micronaut.http.MutableHttpResponse<?> nettyResponse) protected io.micronaut.http.ByteBodyHttpResponse<?>notModified(io.micronaut.http.MutableHttpResponse<?> originalResponse) protected voidsetDateAndCacheHeaders(io.micronaut.http.MutableHttpResponse response, long lastModified) protected voidsetDateHeader(io.micronaut.http.MutableHttpResponse response) io.micronaut.http.ByteBodyHttpResponse<?>write(io.micronaut.core.io.buffer.ByteBufferFactory<?, ?> bufferFactory, io.micronaut.http.HttpRequest<?> request, @NonNull io.micronaut.http.MutableHttpResponse<io.micronaut.http.server.types.files.SystemFile> httpResponse, @NonNull io.micronaut.core.type.Argument<io.micronaut.http.server.types.files.SystemFile> type, @NonNull io.micronaut.http.MediaType mediaType, io.micronaut.http.server.types.files.SystemFile object) io.micronaut.http.ByteBodyHttpResponse<?>write(io.micronaut.http.HttpRequest<?> request, io.micronaut.http.MutableHttpResponse<io.micronaut.http.server.types.files.SystemFile> response, io.micronaut.http.server.types.files.SystemFile systemFile) voidwriteTo(io.micronaut.core.type.Argument<io.micronaut.http.server.types.files.SystemFile> type, io.micronaut.http.MediaType mediaType, io.micronaut.http.server.types.files.SystemFile file, io.micronaut.core.type.MutableHeaders outgoingHeaders, OutputStream outputStream) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.micronaut.http.body.MessageBodyWriter
createSpecific, isBlocking, isWriteable, writeTo
-
Field Details
-
configuration
-
-
Constructor Details
-
SystemFileBodyWriter
public SystemFileBodyWriter(NettyHttpServerConfiguration.FileTypeHandlerConfiguration configuration, @Named("blocking") ExecutorService ioExecutor)
-
-
Method Details
-
writeTo
public void writeTo(io.micronaut.core.type.Argument<io.micronaut.http.server.types.files.SystemFile> type, io.micronaut.http.MediaType mediaType, io.micronaut.http.server.types.files.SystemFile file, io.micronaut.core.type.MutableHeaders outgoingHeaders, OutputStream outputStream) throws io.micronaut.http.codec.CodecException - Specified by:
writeToin interfaceio.micronaut.http.body.MessageBodyWriter<io.micronaut.http.server.types.files.SystemFile>- Throws:
io.micronaut.http.codec.CodecException
-
write
public io.micronaut.http.ByteBodyHttpResponse<?> write(io.micronaut.core.io.buffer.ByteBufferFactory<?, ?> bufferFactory, io.micronaut.http.HttpRequest<?> request, @NonNull @NonNull io.micronaut.http.MutableHttpResponse<io.micronaut.http.server.types.files.SystemFile> httpResponse, @NonNull @NonNull io.micronaut.core.type.Argument<io.micronaut.http.server.types.files.SystemFile> type, @NonNull @NonNull io.micronaut.http.MediaType mediaType, io.micronaut.http.server.types.files.SystemFile object) throws io.micronaut.http.codec.CodecException- Specified by:
writein interfaceio.micronaut.http.body.ResponseBodyWriter<io.micronaut.http.server.types.files.SystemFile>- Throws:
io.micronaut.http.codec.CodecException
-
write
public io.micronaut.http.ByteBodyHttpResponse<?> write(io.micronaut.http.HttpRequest<?> request, io.micronaut.http.MutableHttpResponse<io.micronaut.http.server.types.files.SystemFile> response, io.micronaut.http.server.types.files.SystemFile systemFile) throws io.micronaut.http.codec.CodecException - Throws:
io.micronaut.http.codec.CodecException
-
handleIfModifiedAndHeaders
protected boolean handleIfModifiedAndHeaders(io.micronaut.http.HttpRequest<?> request, io.micronaut.http.MutableHttpResponse<?> response, io.micronaut.http.server.types.files.FileCustomizableResponseType systemFile, io.micronaut.http.MutableHttpResponse<?> nettyResponse) -
setDateAndCacheHeaders
protected void setDateAndCacheHeaders(io.micronaut.http.MutableHttpResponse response, long lastModified) - Parameters:
response- The Http responselastModified- The last modified
-
setDateHeader
protected void setDateHeader(io.micronaut.http.MutableHttpResponse response) - Parameters:
response- The Http response
-
notModified
protected io.micronaut.http.ByteBodyHttpResponse<?> notModified(io.micronaut.http.MutableHttpResponse<?> originalResponse)
-