private void writeResponseFromStream(ResolvedFile response, HttpResponse res, HttpRequest request, MediaType mediaType, HttpMethod method, ChannelHandlerContext ctx) { res.setManagedWriter(new StaticFileWriter(ctx, res, response, request, formats, conf)); }
public StaticFileWriter(ChannelHandlerContext ctx, HttpResponse resIgnored, ResolvedFile file, HttpRequest request, Map<String, String> formats, FilesConfig conf) { this.conf = conf; this.ctx = ctx; this.file = file; this.request = request; higgsPreparedResponse = resIgnored; if (file.isDirectory()) { sendListing(); return; } MimetypesFileTypeMap mimeTypesMap = new MimetypesFileTypeMap(); String contentType = mimeTypesMap.getContentType(file.getPath().toFile()); //if its a supported text file then set to text mime type for (final String ext : formats.keySet()) { if (file.getName().endsWith(ext)) { contentType = formats.get(ext); break; } } res.headers().set(CONTENT_TYPE, contentType); setDateAndCacheHeaders(); if (isKeepAlive(request)) { res.headers().set(CONNECTION, HttpHeaders.Values.KEEP_ALIVE); } }
public StaticFileWriter(ChannelHandlerContext ctx, HttpResponse resIgnored, ResolvedFile file, HttpRequest request, Map<String, String> formats, FilesConfig conf) { this.conf = conf; this.ctx = ctx; this.file = file; this.request = request; higgsPreparedResponse = resIgnored; if (file.isDirectory()) { sendListing(); return; } MimetypesFileTypeMap mimeTypesMap = new MimetypesFileTypeMap(); String contentType = mimeTypesMap.getContentType(file.getPath().toFile()); //if its a supported text file then set to text mime type for (final String ext : formats.keySet()) { if (file.getName().endsWith(ext)) { contentType = formats.get(ext); break; } } res.headers().set(CONTENT_TYPE, contentType); setDateAndCacheHeaders(); if (isKeepAlive(request)) { res.headers().set(CONNECTION, HttpHeaders.Values.KEEP_ALIVE); } }
private void writeResponseFromStream(ResolvedFile response, HttpResponse res, HttpRequest request, MediaType mediaType, HttpMethod method, ChannelHandlerContext ctx) { res.setManagedWriter(new StaticFileWriter(ctx, res, response, request, formats, conf)); }