public final class org.glassfish.grizzly.http.server.filecache.FileCacheEntry extends java.lang.Object implements java.lang.Runnable
{
private static final java.util.logging.Logger LOGGER;
public org.glassfish.grizzly.http.server.filecache.FileCacheKey key;
public java.lang.String host;
public java.lang.String requestURI;
public long lastModified;
public org.glassfish.grizzly.http.util.ContentType contentType;
java.nio.ByteBuffer bb;
java.io.File plainFile;
long plainFileSize;
private boolean canBeCompressed;
private java.util.concurrent.atomic.AtomicBoolean isCompressed;
volatile java.io.File compressedFile;
java.nio.ByteBuffer compressedBb;
long compressedFileSize;
public java.lang.String xPoweredBy;
public org.glassfish.grizzly.http.server.filecache.FileCache$CacheType type;
public java.lang.String date;
public java.lang.String Etag;
public java.lang.String lastModifiedHeader;
public java.lang.String server;
public volatile long timeoutMillis;
private final org.glassfish.grizzly.http.server.filecache.FileCache fileCache;
public void <init>(org.glassfish.grizzly.http.server.filecache.FileCache)
{
org.glassfish.grizzly.http.server.filecache.FileCacheEntry v;
org.glassfish.grizzly.http.server.filecache.FileCache v;
v := @this: org.glassfish.grizzly.http.server.filecache.FileCacheEntry;
v := @parameter: org.glassfish.grizzly.http.server.filecache.FileCache;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: long lastModified> = -1L;
v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: long plainFileSize> = -1L;
v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: long compressedFileSize> = -1L;
v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: org.glassfish.grizzly.http.server.filecache.FileCache fileCache> = v;
return;
}
void setCanBeCompressed(boolean)
{
java.util.concurrent.atomic.AtomicBoolean v;
org.glassfish.grizzly.http.server.filecache.FileCacheEntry v;
boolean v;
v := @this: org.glassfish.grizzly.http.server.filecache.FileCacheEntry;
v := @parameter: boolean;
v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: boolean canBeCompressed> = v;
if v == 0 goto label;
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>()>();
v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.util.concurrent.atomic.AtomicBoolean isCompressed> = v;
label:
return;
}
public boolean canServeCompressed(org.glassfish.grizzly.http.HttpRequestPacket)
{
org.glassfish.grizzly.http.HttpRequestPacket v;
java.util.concurrent.atomic.AtomicBoolean v;
org.glassfish.grizzly.http.CompressionConfig v;
java.lang.String[] v;
org.glassfish.grizzly.http.server.filecache.FileCacheEntry v;
java.io.File v;
boolean v, v, v, v;
org.glassfish.grizzly.http.server.filecache.FileCache v, v;
v := @this: org.glassfish.grizzly.http.server.filecache.FileCacheEntry;
v := @parameter: org.glassfish.grizzly.http.HttpRequestPacket;
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: boolean canBeCompressed>;
if v == 0 goto label;
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: org.glassfish.grizzly.http.server.filecache.FileCache fileCache>;
v = virtualinvoke v.<org.glassfish.grizzly.http.server.filecache.FileCache: org.glassfish.grizzly.http.CompressionConfig getCompressionConfig()>();
v = <org.glassfish.grizzly.http.server.filecache.FileCache: java.lang.String[] COMPRESSION_ALIASES>;
v = staticinvoke <org.glassfish.grizzly.http.CompressionConfig: boolean isClientSupportCompression(org.glassfish.grizzly.http.CompressionConfig,org.glassfish.grizzly.http.HttpRequestPacket,java.lang.String[])>(v, v, v);
if v != 0 goto label;
label:
return 0;
label:
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.util.concurrent.atomic.AtomicBoolean isCompressed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean compareAndSet(boolean,boolean)>(0, 1);
if v == 0 goto label;
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: org.glassfish.grizzly.http.server.filecache.FileCache fileCache>;
virtualinvoke v.<org.glassfish.grizzly.http.server.filecache.FileCache: void compressFile(org.glassfish.grizzly.http.server.filecache.FileCacheEntry)>(v);
label:
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.io.File compressedFile>;
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public long getFileSize(boolean)
{
long v;
org.glassfish.grizzly.http.server.filecache.FileCacheEntry v;
boolean v;
v := @this: org.glassfish.grizzly.http.server.filecache.FileCacheEntry;
v := @parameter: boolean;
if v == 0 goto label;
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: long compressedFileSize>;
goto label;
label:
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: long plainFileSize>;
label:
return v;
}
public java.io.File getFile(boolean)
{
org.glassfish.grizzly.http.server.filecache.FileCacheEntry v;
java.io.File v;
boolean v;
v := @this: org.glassfish.grizzly.http.server.filecache.FileCacheEntry;
v := @parameter: boolean;
if v == 0 goto label;
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.io.File compressedFile>;
goto label;
label:
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.io.File plainFile>;
label:
return v;
}
public java.nio.ByteBuffer getByteBuffer(boolean)
{
org.glassfish.grizzly.http.server.filecache.FileCacheEntry v;
java.nio.ByteBuffer v;
boolean v;
v := @this: org.glassfish.grizzly.http.server.filecache.FileCacheEntry;
v := @parameter: boolean;
if v == 0 goto label;
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.nio.ByteBuffer compressedBb>;
goto label;
label:
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.nio.ByteBuffer bb>;
label:
return v;
}
public void run()
{
org.glassfish.grizzly.http.server.filecache.FileCacheEntry v;
org.glassfish.grizzly.http.server.filecache.FileCache v;
v := @this: org.glassfish.grizzly.http.server.filecache.FileCacheEntry;
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: org.glassfish.grizzly.http.server.filecache.FileCache fileCache>;
virtualinvoke v.<org.glassfish.grizzly.http.server.filecache.FileCache: void remove(org.glassfish.grizzly.http.server.filecache.FileCacheEntry)>(v);
return;
}
public java.lang.String toString()
{
org.glassfish.grizzly.http.server.filecache.FileCache$CacheType v;
long v, v, v, v;
org.glassfish.grizzly.http.server.filecache.FileCacheEntry v;
java.lang.String v, v, v, v;
boolean v;
org.glassfish.grizzly.http.util.ContentType v;
java.lang.StringBuilder v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.glassfish.grizzly.http.server.filecache.FileCache v;
v := @this: org.glassfish.grizzly.http.server.filecache.FileCacheEntry;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("FileCacheEntry");
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("{host=\'");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.lang.String host>;
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(39);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", requestURI=\'");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.lang.String requestURI>;
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(39);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", lastModified=");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: long lastModified>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(long)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", contentType=\'");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: org.glassfish.grizzly.http.util.ContentType contentType>;
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.Object)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(39);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", type=");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: org.glassfish.grizzly.http.server.filecache.FileCache$CacheType type>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", plainFileSize=");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: long plainFileSize>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(long)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", canBeCompressed=");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: boolean canBeCompressed>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(boolean)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", compressedFileSize=");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: long compressedFileSize>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(long)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", timeoutMillis=");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: long timeoutMillis>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(long)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", fileCache=");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: org.glassfish.grizzly.http.server.filecache.FileCache fileCache>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", server=");
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.lang.String server>;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(125);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
protected void finalize() throws java.lang.Throwable
{
org.glassfish.grizzly.http.server.filecache.FileCacheEntry v;
java.util.logging.Logger v, v;
java.io.File v, v, v, v;
java.util.logging.Level v, v;
java.lang.String v;
boolean v, v;
v := @this: org.glassfish.grizzly.http.server.filecache.FileCacheEntry;
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.io.File compressedFile>;
if v == null goto label;
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.io.File compressedFile>;
v = virtualinvoke v.<java.io.File: boolean delete()>();
if v != 0 goto label;
v = <org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.util.logging.Logger LOGGER>;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
v = virtualinvoke v.<java.util.logging.Logger: boolean isLoggable(java.util.logging.Level)>(v);
if v == 0 goto label;
v = <org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.util.logging.Logger LOGGER>;
v = <java.util.logging.Level: java.util.logging.Level FINE>;
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.io.File compressedFile>;
v = virtualinvoke v.<java.io.File: java.lang.String getCanonicalPath()>();
virtualinvoke v.<java.util.logging.Logger: void log(java.util.logging.Level,java.lang.String,java.lang.Object)>(v, "Unable to delete file {0}.  Will try to delete again upon VM exit.", v);
label:
v = v.<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.io.File compressedFile>;
virtualinvoke v.<java.io.File: void deleteOnExit()>();
label:
specialinvoke v.<java.lang.Object: void finalize()>();
return;
}
static void <clinit>()
{
java.util.logging.Logger v;
v = staticinvoke <org.glassfish.grizzly.Grizzly: java.util.logging.Logger logger(java.lang.Class)>(class "Lorg/glassfish/grizzly/http/server/filecache/FileCacheEntry;");
<org.glassfish.grizzly.http.server.filecache.FileCacheEntry: java.util.logging.Logger LOGGER> = v;
return;
}
}