private void renderChild(PrintWriter pw, Resource resource) { String name = ResourceUtil.getName(resource.getPath()); InputStream ins = resource.adaptTo(InputStream.class); if (ins == null) { name += "/"; } else { closeSilently(ins); } String displayName = name; String suffix; if (displayName.length() >= 32) { displayName = displayName.substring(0, 29) + "..."; suffix = ""; } else { suffix = " ".substring( 0, 32 - displayName.length()); } pw.printf("<a href='%s'>%s</a>%s", name, displayName, suffix); ResourceMetadata meta = resource.getResourceMetadata(); long lastModified = meta.getModificationTime(); pw.print(" " + new Date(lastModified) + " "); long length = meta.getContentLength(); if (length > 0) { pw.print(length); } else { pw.print('-'); } pw.println(); }
long fileLength = metadata.getContentLength(); if (fileLength == 0) { return FULL;
@Override public ResourceMetadata getResourceMetadata() { ResourceMetadata metadata = new ResourceMetadata(); metadata.setCharacterEncoding(resource.getResourceMetadata().getCharacterEncoding()); metadata.setContentType(resource.getResourceMetadata().getContentType()); metadata.setContentLength(resource.getResourceMetadata().getContentLength()); metadata.setCreationTime(resource.getResourceMetadata().getCreationTime()); metadata.setModificationTime(resource.getResourceMetadata().getModificationTime()); metadata.setResolutionPath(path); log.info("resolution path : {} ", StringUtils.substringAfter(path, ".")); metadata.setResolutionPathInfo("." + StringUtils.substringAfter(path, ".")); return metadata; }
resource.getResourceMetadata().getContentLength()); byte[] buf = new byte[IO_BUFFER_SIZE]; int rd;
if (meta.getContentLength() > ACCEPT_RANGES_THRESHOLD) { response.setHeader(ACCEPT_RANGES_HEADER, ACCEPT_RANGES_BYTES);
setContentLength(response, resource.getResourceMetadata().getContentLength()); setHeaders(resource, response); return;