class org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler extends java.lang.Object implements org.glassfish.grizzly.WriteHandler { private volatile long size; private final org.glassfish.grizzly.http.server.Response response; private final org.glassfish.grizzly.http.io.NIOOutputStream outputStream; private final java.nio.channels.FileChannel fileChannel; private final org.glassfish.grizzly.memory.MemoryManager mm; private final int chunkSize; void (org.glassfish.grizzly.http.server.Response, org.glassfish.grizzly.http.io.NIOOutputStream, java.io.File, int) { java.lang.IllegalStateException v; org.glassfish.grizzly.http.server.Request v; org.glassfish.grizzly.memory.MemoryManager v; long v; java.io.FileInputStream v; org.glassfish.grizzly.http.server.Response v; java.io.File v; java.io.FileNotFoundException v; org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler v; org.glassfish.grizzly.filterchain.FilterChainContext v; int v; java.nio.channels.FileChannel v; org.glassfish.grizzly.http.io.NIOOutputStream v; v := @this: org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler; v := @parameter: org.glassfish.grizzly.http.server.Response; v := @parameter: org.glassfish.grizzly.http.io.NIOOutputStream; v := @parameter: java.io.File; v := @parameter: int; specialinvoke v.()>(); label: v = new java.io.FileInputStream; specialinvoke v.(java.io.File)>(v); v = virtualinvoke v.(); v. = v; label: goto label; label: v := @caughtexception; v = new java.lang.IllegalStateException; specialinvoke v.(java.lang.String,java.lang.Throwable)>("File should have existed", v); throw v; label: v = virtualinvoke v.(); v. = v; v. = v; v. = v; v = virtualinvoke v.(); v = virtualinvoke v.(); v = virtualinvoke v.(); v. = v; v. = v; return; catch java.io.FileNotFoundException from label to label with label; } public void onWritePossible() throws java.lang.Exception { org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler v; java.util.logging.Logger v; org.glassfish.grizzly.http.io.NIOOutputStream v; boolean v; java.util.logging.Level v; v := @this: org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler; v = ; v = ; virtualinvoke v.(v, "[onWritePossible]"); v = specialinvoke v.(); if v == 0 goto label; v = v.; virtualinvoke v.(v); label: return; } public void onError(java.lang.Throwable) { java.lang.Throwable v; org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler v; java.lang.String v; org.glassfish.grizzly.http.server.Response v; java.util.logging.Logger v; java.util.logging.Level v; v := @this: org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler; v := @parameter: java.lang.Throwable; v = ; v = ; virtualinvoke v.(v, "[onError] ", v); v = v.; v = virtualinvoke v.(); virtualinvoke v.(500, v); specialinvoke v.(1); return; } private boolean sendChunk() throws java.io.IOException { org.glassfish.grizzly.memory.MemoryManager v; org.glassfish.grizzly.Buffer v; long v, v, v, v; org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler v; byte v; int v, v; java.nio.channels.FileChannel v; org.glassfish.grizzly.http.io.NIOOutputStream v; v := @this: org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler; v = v.; v = v.; v = interfaceinvoke v.(v); interfaceinvoke v.(1); v = v.; v = staticinvoke (v, v); if v > 0 goto label; specialinvoke v.(0); return 0; label: interfaceinvoke v.(); v = v.; virtualinvoke v.(v); v = v.; v = v - v; v. = v; v = v.; v = v cmp 0L; if v > 0 goto label; specialinvoke v.(0); return 0; label: return 1; } private void complete(boolean) { java.io.IOException v, v; org.glassfish.grizzly.http.server.Response v, v, v, v, v; org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler v; java.lang.String v, v; java.nio.channels.FileChannel v; org.glassfish.grizzly.http.io.NIOOutputStream v; boolean v, v; v := @this: org.glassfish.grizzly.http.server.StaticHttpHandlerBase$NonBlockingDownloadHandler; v := @parameter: boolean; label: v = v.; virtualinvoke v.(); label: goto label; label: v := @caughtexception; if v != 0 goto label; v = v.; v = virtualinvoke v.(); virtualinvoke v.(500, v); label: v = v.; virtualinvoke v.(); label: goto label; label: v := @caughtexception; if v != 0 goto label; v = v.; v = virtualinvoke v.(); virtualinvoke v.(500, v); label: v = v.; v = virtualinvoke v.(); if v == 0 goto label; v = v.; virtualinvoke v.(); goto label; label: v = v.; virtualinvoke v.(); label: return; catch java.io.IOException from label to label with label; catch java.io.IOException from label to label with label; } }