abstract class io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody extends java.lang.Object implements io.fabric.kubernetes.client.http.AsyncBody
{
private final io.fabric.kubernetes.client.http.AsyncBody$Consumer consumer;
private final okio.BufferedSource source;
private final java.util.concurrent.CompletableFuture done;
private boolean consuming;
private boolean requested;
private final java.util.concurrent.Executor executor;
void <init>(io.fabric.kubernetes.client.http.AsyncBody$Consumer, okio.BufferedSource, java.util.concurrent.Executor)
{
okio.BufferedSource v;
java.util.concurrent.Executor v;
io.fabric.kubernetes.client.http.AsyncBody$Consumer v;
java.util.concurrent.CompletableFuture v;
io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody v;
v := @this: io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody;
v := @parameter: io.fabric.kubernetes.client.http.AsyncBody$Consumer;
v := @parameter: okio.BufferedSource;
v := @parameter: java.util.concurrent.Executor;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.CompletableFuture;
specialinvoke v.<java.util.concurrent.CompletableFuture: void <init>()>();
v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: java.util.concurrent.CompletableFuture done> = v;
v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: io.fabric.kubernetes.client.http.AsyncBody$Consumer consumer> = v;
v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: okio.BufferedSource source> = v;
v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: java.util.concurrent.Executor executor> = v;
return;
}
public void consume()
{
java.lang.Throwable v;
java.lang.Object[] v;
java.util.concurrent.Executor v;
java.util.concurrent.CompletableFuture v;
java.lang.Runnable v;
java.lang.Exception v;
io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody v;
okio.BufferedSource v;
boolean v;
v := @this: io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody;
entermonitor v;
label:
v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: boolean requested> = 1;
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: boolean consuming>;
if v == 0 goto label;
exitmonitor v;
label:
return;
label:
v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: boolean consuming> = 1;
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: java.util.concurrent.Executor executor>;
v = staticinvoke <io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody$doConsume__5: java.lang.Runnable bootstrap$(io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody)>(v);
interfaceinvoke v.<java.util.concurrent.Executor: void execute(java.lang.Runnable)>(v);
label:
goto label;
label:
v := @caughtexception;
v = newarray (java.io.Closeable)[1];
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: okio.BufferedSource source>;
v[0] = v;
staticinvoke <io.fabric.kubernetes.client.utils.Utils: void closeQuietly(java.io.Closeable[])>(v);
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: java.util.concurrent.CompletableFuture done>;
virtualinvoke v.<java.util.concurrent.CompletableFuture: boolean completeExceptionally(java.lang.Throwable)>(v);
label:
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Exception from label to label with label;
}
public void doConsume()
{
java.lang.Throwable v;
java.lang.Object[] v;
java.util.concurrent.CompletableFuture v, v, v;
boolean v, v, v;
io.fabric.kubernetes.client.http.AsyncBody$Consumer v;
java.lang.Exception v;
io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody v;
okio.BufferedSource v, v, v, v;
java.lang.Object v;
v := @this: io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody;
label:
entermonitor v;
label:
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: boolean requested>;
if v == 0 goto label;
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: java.util.concurrent.CompletableFuture done>;
v = virtualinvoke v.<java.util.concurrent.CompletableFuture: boolean isDone()>();
if v == 0 goto label;
label:
v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: boolean consuming> = 0;
exitmonitor v;
label:
return;
label:
v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: boolean requested> = 0;
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: okio.BufferedSource source>;
v = interfaceinvoke v.<okio.BufferedSource: boolean exhausted()>();
if v != 0 goto label;
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: okio.BufferedSource source>;
v = virtualinvoke v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: java.lang.Object process(okio.BufferedSource)>(v);
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: io.fabric.kubernetes.client.http.AsyncBody$Consumer consumer>;
interfaceinvoke v.<io.fabric.kubernetes.client.http.AsyncBody$Consumer: void consume(java.lang.Object,io.fabric.kubernetes.client.http.AsyncBody)>(v, v);
goto label;
label:
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: okio.BufferedSource source>;
interfaceinvoke v.<okio.BufferedSource: void close()>();
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: java.util.concurrent.CompletableFuture done>;
virtualinvoke v.<java.util.concurrent.CompletableFuture: boolean complete(java.lang.Object)>(null);
goto label;
label:
v := @caughtexception;
v = newarray (java.io.Closeable)[1];
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: okio.BufferedSource source>;
v[0] = v;
staticinvoke <io.fabric.kubernetes.client.utils.Utils: void closeQuietly(java.io.Closeable[])>(v);
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: java.util.concurrent.CompletableFuture done>;
virtualinvoke v.<java.util.concurrent.CompletableFuture: boolean completeExceptionally(java.lang.Throwable)>(v);
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Exception from label to label with label;
}
public java.util.concurrent.CompletableFuture done()
{
java.util.concurrent.CompletableFuture v;
io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody v;
v := @this: io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody;
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: java.util.concurrent.CompletableFuture done>;
return v;
}
protected abstract java.lang.Object process(okio.BufferedSource) throws java.io.IOException;
public void cancel()
{
okio.BufferedSource v;
java.lang.Object[] v;
java.util.concurrent.CompletableFuture v;
io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody v;
v := @this: io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody;
v = newarray (java.io.Closeable)[1];
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: okio.BufferedSource source>;
v[0] = v;
staticinvoke <io.fabric.kubernetes.client.utils.Utils: void closeQuietly(java.io.Closeable[])>(v);
v = v.<io.fabric.kubernetes.client.okhttp.OkHttpClientImpl$OkHttpAsyncBody: java.util.concurrent.CompletableFuture done>;
virtualinvoke v.<java.util.concurrent.CompletableFuture: boolean cancel(boolean)>(0);
return;
}
}