@Override public boolean isRangeSupported() { if(underlying instanceof RangeAwareResource) { return ((RangeAwareResource) underlying).isRangeSupported(); } return false; } }
@Override public void serveRange(Sender sender, HttpServerExchange exchange, long start, long end, IoCallback completionCallback) { ((RangeAwareResource) underlying).serveRange(sender, exchange, start, end, completionCallback); }
if(resource instanceof RangeAwareResource && ((RangeAwareResource)resource).isRangeSupported() && contentLength != null && contentEncodedResourceManager == null) { exchange.endExchange(); } else if(rangeResponse != null) { ((RangeAwareResource)resource).serveRange(exchange.getResponseSender(), exchange, start, end, IoCallback.END_EXCHANGE); } else { resource.serve(exchange.getResponseSender(), exchange, IoCallback.END_EXCHANGE);
resp.setContentLength(contentLength.intValue()); if(resource instanceof RangeAwareResource && ((RangeAwareResource)resource).isRangeSupported() && resource.getContentLength() != null) { resp.setHeader(Headers.ACCEPT_RANGES_STRING, "bytes"); resource.serve(exchange.getResponseSender(), exchange, completionCallback(include)); } else { ((RangeAwareResource)resource).serveRange(exchange.getResponseSender(), exchange, start, end, completionCallback(include));
resp.setContentLength(contentLength.intValue()); if (resource instanceof RangeAwareResource && ((RangeAwareResource) resource).isRangeSupported() && resource.getContentLength() != null) { resp.setHeader(Headers.ACCEPT_RANGES_STRING, "bytes"); resource.serve(exchange.getResponseSender(), exchange, completionCallback(include)); } else { ((RangeAwareResource) resource).serveRange(exchange.getResponseSender(), exchange, start, end, completionCallback(include));
@Override public boolean isRangeSupported() { //we can only handle range requests if the underlying resource supports it //even if we have the resource in the cache it may disappear before we try and serve it return underlyingResource instanceof RangeAwareResource && ((RangeAwareResource) underlyingResource).isRangeSupported(); }
final DirectBufferCache dataCache = cachingResourceManager.getDataCache(); if(dataCache == null) { ((RangeAwareResource)underlyingResource).serveRange(sender, exchange, start, end, completionCallback); return; ((RangeAwareResource)underlyingResource).serveRange(sender, exchange, start, end, completionCallback); return; ((RangeAwareResource)underlyingResource).serveRange(sender, exchange, start, end, completionCallback); } else {
if(resource instanceof RangeAwareResource && ((RangeAwareResource)resource).isRangeSupported() && contentLength != null && contentEncodedResourceManager == null) { exchange.endExchange(); } else if(rangeResponse != null) { ((RangeAwareResource)resource).serveRange(exchange.getResponseSender(), exchange, start, end, IoCallback.END_EXCHANGE); } else { resource.serve(exchange.getResponseSender(), exchange, IoCallback.END_EXCHANGE);
@Override public boolean isRangeSupported() { //we can only handle range requests if the underlying resource supports it //even if we have the resource in the cache it may disappear before we try and serve it return underlyingResource instanceof RangeAwareResource && ((RangeAwareResource) underlyingResource).isRangeSupported(); }
@Override public void serveRange(Sender sender, HttpServerExchange exchange, long start, long end, IoCallback completionCallback) { ((RangeAwareResource) underlying).serveRange(sender, exchange, start, end, completionCallback); }
if(resource instanceof RangeAwareResource && ((RangeAwareResource)resource).isRangeSupported() && contentLength != null && contentEncodedResourceManager == null) { exchange.endExchange(); } else if(rangeResponse != null) { ((RangeAwareResource)resource).serveRange(exchange.getResponseSender(), exchange, start, end, IoCallback.END_EXCHANGE); } else { resource.serve(exchange.getResponseSender(), exchange, IoCallback.END_EXCHANGE);
@Override public boolean isRangeSupported() { if(underlying instanceof RangeAwareResource) { return ((RangeAwareResource) underlying).isRangeSupported(); } return false; } }
@Override public void serveRange(Sender sender, HttpServerExchange exchange, long start, long end, IoCallback completionCallback) { ((RangeAwareResource) underlying).serveRange(sender, exchange, start, end, completionCallback); }
@Override public boolean isRangeSupported() { //we can only handle range requests if the underlying resource supports it //even if we have the resource in the cache it may disappear before we try and serve it return underlyingResource instanceof RangeAwareResource && ((RangeAwareResource) underlyingResource).isRangeSupported(); }
final DirectBufferCache dataCache = cachingResourceManager.getDataCache(); if(dataCache == null) { ((RangeAwareResource)underlyingResource).serveRange(sender, exchange, start, end, completionCallback); return; ((RangeAwareResource)underlyingResource).serveRange(sender, exchange, start, end, completionCallback); return; ((RangeAwareResource)underlyingResource).serveRange(sender, exchange, start, end, completionCallback); } else {
@Override public boolean isRangeSupported() { if(underlying instanceof RangeAwareResource) { return ((RangeAwareResource) underlying).isRangeSupported(); } return false; } }
final DirectBufferCache dataCache = cachingResourceManager.getDataCache(); if(dataCache == null) { ((RangeAwareResource)underlyingResource).serveRange(sender, exchange, start, end, completionCallback); return; ((RangeAwareResource)underlyingResource).serveRange(sender, exchange, start, end, completionCallback); } else {