Refine search
/** * <p> * {@inheritDoc} * </p> * * <p> * When invoked, this method will add a {@link FileCacheProbe} to track * statistics. * </p> */ @Override protected void onRegister(GrizzlyJmxManager mom, GmbalMBean bean) { fileCache.getMonitoringConfig().addProbes(fileCacheProbe); }
if (size > getMaxEntrySize()) { return null; FileInputStream stream = null; try { if (size > getMinEntrySize()) { if (addMappedMemorySize(size) > getMaxLargeFileCacheSize()) { subMappedMemorySize(size); return null; if (addHeapSize(size) > getMaxSmallFileCacheSize()) { subHeapSize(size); return null; notifyProbesError(this, e); return null; } finally { stream.close(); } catch (IOException ignored) { notifyProbesError(this, ignored); fileChannel.close(); } catch (IOException ignored) { notifyProbesError(this, ignored);
/** * Add a resource to the cache. * Unlike the {@link #add(org.glassfish.grizzly.http.HttpRequestPacket, java.io.File)} * this method adds a resource to a cache but is not able to send the * resource content to a client if client doesn't have the latest version * of this resource. */ public CacheResult add(final HttpRequestPacket request, final long lastModified) { return add(request, null, lastModified); }
final File cacheFile, final long lastModified) { final String requestURI = request.getRequestURI(); final String host = request.getHeader(Header.Host); final FileCacheKey key = new FileCacheKey(host, requestURI); if (fileCacheMap.putIfAbsent(key, NULL_CACHE_ENTRY) != null) { if (size > getMaxCacheEntries()) { cacheSize.decrementAndGet(); fileCacheMap.remove(key); final HttpResponsePacket response = request.getResponse(); final MimeHeaders headers = response.getHeaders(); entry = createEntry(cacheFile); entry.setCanBeCompressed(canBeCompressed(cacheFile, contentType)); } else { entry = new FileCacheEntry(this); notifyProbesEntryAdded(this, entry); final int secondsMaxAgeLocal = getSecondsMaxAge(); if (secondsMaxAgeLocal > 0) { delayQueue.add(entry, secondsMaxAgeLocal, TimeUnit.SECONDS);
final HttpRequestPacket request = (HttpRequestPacket) requestContent.getHttpHeader(); if (fileCache.isEnabled() && Method.GET.equals(request.getMethod())) { final FileCacheEntry cacheEntry = fileCache.get(request); if (cacheEntry != null) { final HttpResponsePacket response = request.getResponse(); prepareResponse(cacheEntry, response); return fileCache.isFileSendEnabled() && !request.isSecure() ? sendFileZeroCopy(ctx, response, cacheEntry, isServeCompressed)
fileCache.initialize(delayedExecutor); final FileCacheFilter fileCacheFilter = new FileCacheFilter(fileCache); fileCache.getMonitoringConfig().addProbes( serverConfig.getMonitoringConfig().getFileCacheConfig().getProbes()); builder.add(fileCacheFilter); fileCache.setFileSendEnabled(listener.isSendFileEnabled());
public final boolean addToFileCache(final Request req, final Response res, final File resource) { if (isFileCacheEnabled) { final FilterChainContext fcContext = req.getContext(); final FileCacheFilter fileCacheFilter = lookupFileCache(fcContext); if (fileCacheFilter != null) { final FileCache fileCache = fileCacheFilter.getFileCache(); if (fileCache.isEnabled()) { if (res != null) { addCachingHeaders(res, resource); } fileCache.add(req.getRequest(), resource); return true; } } } return false; }
fileCache.initialize(transport.getMemoryManager(), delayedExecutor); final FileCacheFilter fileCacheFilter = new FileCacheFilter(fileCache);
/** * @see org.glassfish.grizzly.http.server.filecache.FileCache#getMinEntrySize() */ @ManagedAttribute(id="min-entry-size") @Description("The maximum size, in bytes, a file must be in order to be cached in the heap cache.") public long getMinEntrySize() { return fileCache.getMinEntrySize(); }
/** * @see org.glassfish.grizzly.http.server.filecache.FileCache#getSecondsMaxAge() */ @ManagedAttribute(id="max-age-seconds") @Description("The maximum age, in seconds, a resource may be cached.") public int getSecondsMaxAge() { return fileCache.getSecondsMaxAge(); }
/** * @see org.glassfish.grizzly.http.server.filecache.FileCache#getMaxCacheEntries() */ @ManagedAttribute(id="max-number-of-cache-entries") @Description("The maxumim number of entries that may exist in the cache.") public int getMaxCacheEntries() { return fileCache.getMaxCacheEntries(); }
/** * @see org.glassfish.grizzly.http.server.filecache.FileCache#getMaxEntrySize() */ @ManagedAttribute(id="max-entry-size") @Description("The maximum size, in bytes, a resource may be before it can no longer be considered cachable.") public long getMaxEntrySize() { return fileCache.getMaxEntrySize(); }
/** * @see org.glassfish.grizzly.http.server.filecache.FileCache#isEnabled() */ @ManagedAttribute(id="file-cache-enabled") @Description("Indicates whether or not the file cache is enabled.") public boolean isFileCacheEnabled() { return fileCache.isEnabled(); }
/** * @see org.glassfish.grizzly.http.server.filecache.FileCache#getMaxLargeFileCacheSize() */ @ManagedAttribute(id="memory-mapped-file-cache-size") @Description("The maximum size, in bytes, of the memory mapped cache for large files.") public long getMaxLargeFileCacheSize() { return fileCache.getMaxLargeFileCacheSize(); }
/** * @see org.glassfish.grizzly.http.server.filecache.FileCache#getMaxSmallFileCacheSize() */ @ManagedAttribute(id="heap-file-cache-size") @Description("The maximum size, in bytes, of the heap cache for files below the water mark set by min-entry-size.") public long getMaxSmallFileCacheSize() { return fileCache.getMaxSmallFileCacheSize(); }
final File cacheFile, final long lastModified) { final String requestURI = request.getRequestURI(); final String host = request.getHeader(Header.Host); final FileCacheKey key = new FileCacheKey(host, requestURI); if (fileCacheMap.putIfAbsent(key, NULL_CACHE_ENTRY) != null) { if (size > getMaxCacheEntries()) { cacheSize.decrementAndGet(); fileCacheMap.remove(key); final HttpResponsePacket response = request.getResponse(); final MimeHeaders headers = response.getHeaders(); entry = createEntry(cacheFile); entry.setCanBeCompressed(canBeCompressed(cacheFile, contentType)); } else { entry = new FileCacheEntry(this); notifyProbesEntryAdded(this, entry); final int secondsMaxAgeLocal = getSecondsMaxAge(); if (secondsMaxAgeLocal > 0) { delayQueue.add(entry, secondsMaxAgeLocal, TimeUnit.SECONDS);
final HttpRequestPacket request = (HttpRequestPacket) requestContent.getHttpHeader(); if (fileCache.isEnabled() && Method.GET.equals(request.getMethod())) { final FileCacheEntry cacheEntry = fileCache.get(request); if (cacheEntry != null) { final HttpResponsePacket response = request.getResponse(); prepareResponse(cacheEntry, response); return fileCache.isFileSendEnabled() && !request.isSecure() ? sendFileZeroCopy(ctx, response, cacheEntry, isServeCompressed)
fileCache.initialize(delayedExecutor); final FileCacheFilter fileCacheFilter = new FileCacheFilter(fileCache); fileCache.getMonitoringConfig().addProbes( serverConfig.getMonitoringConfig().getFileCacheConfig().getProbes()); builder.add(fileCacheFilter); fileCache.setFileSendEnabled(listener.isSendFileEnabled());
public final boolean addToFileCache(final Request req, final Response res, final File resource) { if (isFileCacheEnabled) { final FilterChainContext fcContext = req.getContext(); final FileCacheFilter fileCacheFilter = lookupFileCache(fcContext); if (fileCacheFilter != null) { final FileCache fileCache = fileCacheFilter.getFileCache(); if (fileCache.isEnabled()) { if (res != null) { addCachingHeaders(res, resource); } fileCache.add(req.getRequest(), resource); return true; } } } return false; }
fileCache.initialize(obtainDelayedExecutor()); final FileCacheFilter fileCacheFilter = new FileCacheFilter(fileCache);