public class io.fabric.kubernetes.client.dsl.internal.LogWatchCallback extends java.lang.Object implements io.fabric.kubernetes.client.dsl.LogWatch, java.lang.AutoCloseable
{
private static final org.slf4j.Logger LOGGER;
private java.io.OutputStream out;
private java.nio.channels.WritableByteChannel outChannel;
private volatile java.io.InputStream output;
private final java.util.concurrent.atomic.AtomicBoolean closed;
private volatile java.util.Optional asyncBody;
private final io.fabric.kubernetes.client.utils.internal.SerialExecutor serialExecutor;
public void <init>(java.io.OutputStream, java.util.concurrent.Executor)
{
java.io.OutputStream v;
java.util.concurrent.Executor v;
java.nio.channels.WritableByteChannel v;
java.util.Optional v;
java.util.concurrent.atomic.AtomicBoolean v;
io.fabric.kubernetes.client.dsl.internal.LogWatchCallback v;
io.fabric.kubernetes.client.utils.internal.SerialExecutor v;
v := @this: io.fabric.kubernetes.client.dsl.internal.LogWatchCallback;
v := @parameter: java.io.OutputStream;
v := @parameter: java.util.concurrent.Executor;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.atomic.AtomicBoolean;
specialinvoke v.<java.util.concurrent.atomic.AtomicBoolean: void <init>(boolean)>(0);
v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: java.util.concurrent.atomic.AtomicBoolean closed> = v;
v = staticinvoke <java.util.Optional: java.util.Optional empty()>();
v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: java.util.Optional asyncBody> = v;
v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: java.io.OutputStream out> = v;
if v == null goto label;
v = staticinvoke <java.nio.channels.Channels: java.nio.channels.WritableByteChannel newChannel(java.io.OutputStream)>(v);
v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: java.nio.channels.WritableByteChannel outChannel> = v;
label:
v = new io.fabric.kubernetes.client.utils.internal.SerialExecutor;
specialinvoke v.<io.fabric.kubernetes.client.utils.internal.SerialExecutor: void <init>(java.util.concurrent.Executor)>(v);
v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: io.fabric.kubernetes.client.utils.internal.SerialExecutor serialExecutor> = v;
return;
}
public void close()
{
io.fabric.kubernetes.client.dsl.internal.LogWatchCallback v;
v := @this: io.fabric.kubernetes.client.dsl.internal.LogWatchCallback;
specialinvoke v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: void cleanUp()>();
return;
}
private void cleanUp()
{
java.util.function.Consumer v;
java.util.Optional v;
java.util.concurrent.atomic.AtomicBoolean v;
io.fabric.kubernetes.client.dsl.internal.LogWatchCallback v;
boolean v;
io.fabric.kubernetes.client.utils.internal.SerialExecutor v;
v := @this: io.fabric.kubernetes.client.dsl.internal.LogWatchCallback;
v = v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean compareAndSet(boolean,boolean)>(0, 1);
if v != 0 goto label;
return;
label:
v = v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: java.util.Optional asyncBody>;
v = staticinvoke <io.fabric.kubernetes.client.dsl.internal.LogWatchCallback$cancel__1358: java.util.function.Consumer bootstrap$()>();
virtualinvoke v.<java.util.Optional: void ifPresent(java.util.function.Consumer)>(v);
v = v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: io.fabric.kubernetes.client.utils.internal.SerialExecutor serialExecutor>;
virtualinvoke v.<io.fabric.kubernetes.client.utils.internal.SerialExecutor: void shutdownNow()>();
return;
}
public io.fabric.kubernetes.client.dsl.internal.LogWatchCallback callAndWait(io.fabric.kubernetes.client.http.HttpClient, java.net.URL)
{
java.net.URL v;
io.fabric.kubernetes.client.http.HttpRequest v;
java.util.concurrent.CompletableFuture v, v, v;
io.fabric.kubernetes.client.http.HttpClient$BodyConsumer v;
java.util.function.BiConsumer v, v;
io.fabric.kubernetes.client.http.HttpRequest$Builder v, v;
io.fabric.kubernetes.client.http.HttpClient v, v;
java.io.OutputStream v;
java.util.concurrent.TimeUnit v;
io.fabric.kubernetes.client.dsl.internal.LogWatchCallback v;
io.fabric.kubernetes.client.http.HttpClient$DerivedClientBuilder v, v;
v := @this: io.fabric.kubernetes.client.dsl.internal.LogWatchCallback;
v := @parameter: io.fabric.kubernetes.client.http.HttpClient;
v := @parameter: java.net.URL;
v = interfaceinvoke v.<io.fabric.kubernetes.client.http.HttpClient: io.fabric.kubernetes.client.http.HttpRequest$Builder newHttpRequestBuilder()>();
v = interfaceinvoke v.<io.fabric.kubernetes.client.http.HttpRequest$Builder: io.fabric.kubernetes.client.http.HttpRequest$Builder url(java.net.URL)>(v);
v = interfaceinvoke v.<io.fabric.kubernetes.client.http.HttpRequest$Builder: io.fabric.kubernetes.client.http.HttpRequest build()>();
v = interfaceinvoke v.<io.fabric.kubernetes.client.http.HttpClient: io.fabric.kubernetes.client.http.HttpClient$DerivedClientBuilder newBuilder()>();
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit MILLISECONDS>;
v = interfaceinvoke v.<io.fabric.kubernetes.client.http.HttpClient$DerivedClientBuilder: io.fabric.kubernetes.client.http.HttpClient$DerivedClientBuilder readTimeout(long,java.util.concurrent.TimeUnit)>(0L, v);
v = interfaceinvoke v.<io.fabric.kubernetes.client.http.HttpClient$DerivedClientBuilder: io.fabric.kubernetes.client.http.HttpClient build()>();
v = v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: java.io.OutputStream out>;
if v != null goto label;
v = interfaceinvoke v.<io.fabric.kubernetes.client.http.HttpClient: java.util.concurrent.CompletableFuture sendAsync(io.fabric.kubernetes.client.http.HttpRequest,java.lang.Class)>(v, class "Ljava/io/InputStream;");
v = staticinvoke <io.fabric.kubernetes.client.dsl.internal.LogWatchCallback$lambda_callAndWait_0__1361: java.util.function.BiConsumer bootstrap$(io.fabric.kubernetes.client.dsl.internal.LogWatchCallback)>(v);
v = virtualinvoke v.<java.util.concurrent.CompletableFuture: java.util.concurrent.CompletableFuture whenComplete(java.util.function.BiConsumer)>(v);
virtualinvoke v.<java.util.concurrent.CompletableFuture: java.lang.Object join()>();
goto label;
label:
v = staticinvoke <io.fabric.kubernetes.client.dsl.internal.LogWatchCallback$lambda_callAndWait_3__1359: io.fabric.kubernetes.client.http.HttpClient$BodyConsumer bootstrap$(io.fabric.kubernetes.client.dsl.internal.LogWatchCallback)>(v);
v = interfaceinvoke v.<io.fabric.kubernetes.client.http.HttpClient: java.util.concurrent.CompletableFuture consumeBytes(io.fabric.kubernetes.client.http.HttpRequest,io.fabric.kubernetes.client.http.HttpClient$BodyConsumer)>(v, v);
v = staticinvoke <io.fabric.kubernetes.client.dsl.internal.LogWatchCallback$lambda_callAndWait_5__1360: java.util.function.BiConsumer bootstrap$(io.fabric.kubernetes.client.dsl.internal.LogWatchCallback)>(v);
virtualinvoke v.<java.util.concurrent.CompletableFuture: java.util.concurrent.CompletableFuture whenComplete(java.util.function.BiConsumer)>(v);
label:
return v;
}
public java.io.InputStream getOutput()
{
io.fabric.kubernetes.client.dsl.internal.LogWatchCallback v;
java.io.InputStream v;
v := @this: io.fabric.kubernetes.client.dsl.internal.LogWatchCallback;
v = v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: java.io.InputStream output>;
return v;
}
public void onFailure(java.lang.Throwable)
{
java.lang.Throwable v;
org.slf4j.Logger v;
java.util.concurrent.atomic.AtomicBoolean v;
io.fabric.kubernetes.client.dsl.internal.LogWatchCallback v;
boolean v;
v := @this: io.fabric.kubernetes.client.dsl.internal.LogWatchCallback;
v := @parameter: java.lang.Throwable;
v = v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: java.util.concurrent.atomic.AtomicBoolean closed>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicBoolean: boolean get()>();
if v == 0 goto label;
return;
label:
v = <io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: org.slf4j.Logger LOGGER>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Log Callback Failure.", v);
specialinvoke v.<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: void cleanUp()>();
return;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lio/fabric8/kubernetes/client/dsl/internal/LogWatchCallback;");
<io.fabric.kubernetes.client.dsl.internal.LogWatchCallback: org.slf4j.Logger LOGGER> = v;
return;
}
}